Compartilhar via


Mesclagem de textura multipasso (Direct3D 9)

Os apps Direct3D podem conseguir vários efeitos especiais ao aplicar diversas texturas a um primitivo durante múltiplas passagens de renderização. O termo comum para isso é mesclagem de texturas de passagem múltipla. O uso típico da mesclagem de textura com passagens múltiplas é emular os efeitos de iluminação complexos e os modelos de sombreamento ao aplicar várias cores de diversas texturas diferentes. Uma dessas aplicações é chamada de mapeamento suave. Para obter mais informações, consulte Mapeamento de luz com texturas (Direct3D 9).

Observação

Alguns dispositivos são capazes de aplicar várias texturas a primitivos em uma única passagem. Para obter detalhes, consulte Combinação de textura (Direct3D 9).

 

Se o hardware do usuário não oferecer suporte à mistura de textura múltipla, o app pode usar a mistura de textura com passagem múltipla para obter os mesmo efeitos visuais. No entanto, o app não pode manter as taxas de quadros que são possíveis ao usar a mistura de textura múltipla.

Para executar a mesclagem de textura multipasso em um aplicativo C/C++.

  1. Defina uma textura no estágio de textura 0 chamando o método IDirect3DDevice9::SetTexture .
  2. Selecione a cor desejada e as operações e argumentos de combinação alfa com o método IDirect3DDevice9::SetTextureStageState . As configurações padrão são adequadas para a mistura de textura com passagem múltipla.
  3. Renderize os objetos adequados na cena.
  4. Defina a textura seguinte no estágio de textura 0.
  5. Defina os estados de renderização D3DRS_SRCBLEND e D3DRS_DESTBLEND para ajustar os fatores de mesclagem de origem e destino conforme necessário. O sistema combina as novas texturas aos pixels existentes na superfície de destino de renderização de acordo com esses parâmetros.
  6. Repita as etapas 3, 4 e 5 com a quantidade de texturas necessária.

Mesclagem de textura