Compartilhar via


Mesclagem de textura multipasso (Direct3D 9)

Aplicativos Direct3D podem obter vários efeitos especiais aplicando várias texturas a um primitivo ao longo de várias passagens de renderização. O termo comum para isso é a mesclagem de textura multipasso. Um uso típico para mesclagem de textura multipasso é emular os efeitos de modelos complexos de iluminação e sombreamento aplicando várias cores de várias texturas diferentes. Um desses aplicativos é chamado de mapeamento de luz. Para obter mais informações, consulte mapeamento de luz com texturas (Direct3D 9).

Nota

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

 

Se o hardware do usuário não der suporte à combinação de várias texturas, seu aplicativo poderá usar a combinação de textura multipasso para obter os mesmos efeitos visuais. No entanto, o aplicativo não pode sustentar as taxas de quadros possíveis ao usar a combinação de várias texturas.

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 de combinação alfa com o método IDirect3DDevice9::SetTextureStageState. As configurações padrão são adequadas para mesclagem de textura multipasso.
  3. Renderize os objetos apropriados na cena.
  4. Defina a próxima textura no estágio de textura 0.
  5. Defina os estados de renderização D3DRS_SRCBLEND e D3DRS_DESTBLEND para ajustar os fatores de combinação de origem e destino, conforme necessário. O sistema combina as novas texturas com os 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 quantas texturas forem necessárias.

de mesclagem de textura