No XNA (e no Direct3D em geral no AFAIK), em vez de criar sombreadores individuais de vértices e fragmentos, você agrupa potencialmente muitos sombreadores relacionados em 'Efeitos'. Quando você usa um efeito, seleciona uma 'técnica' (ou repete todas elas) e, em seguida, cada 'técnica' tem um número de 'passes'. Você percorre cada passagem, seleciona o vértice e o sombreador relevantes e desenha a geometria.
O que estou curioso é que você precisa de vários passes? Entendo que, nos primeiros dias do 3d, você tinha apenas uma unidade de textura e, em seguida, você tinha 2, e isso muitas vezes ainda não era suficiente se você também quisesse fazer o mapeamento do ambiente. Mas em dispositivos modernos, mesmo na classe móvel, você pode experimentar 8 ou mais texturas e fazer quantos cálculos de iluminação desejar em um único sombreador.
Os mais experientes aqui podem oferecer exemplos práticos de onde a renderização multipassas ainda é necessária, ou isso é apenas um excesso de engenharia por parte do XNA / Direct3d?