Compartir a través de


Mezcla de texturas multipaso (Direct3D 9)

Las aplicaciones direct3D pueden lograr numerosos efectos especiales aplicando varias texturas a un primitivo durante el transcurso de varios pasos de representación. El término común para esto es la combinación de texturas de varios pasos. Un uso típico para la mezcla de texturas multipass es emular los efectos de los modelos complejos de iluminación y sombreado aplicando varios colores de varias texturas diferentes. Una de estas aplicaciones se denomina asignación de luz. Para obtener más información, consulte asignación de luz con texturas (Direct3D 9).

Nota

Algunos dispositivos son capaces de aplicar varias texturas a primitivos en un solo paso. Para obtener más información, consulte mezcla de texturas (Direct3D 9).

 

Si el hardware del usuario no admite la combinación de varias texturas, la aplicación puede usar la combinación de texturas multipaso para lograr los mismos efectos visuales. Sin embargo, la aplicación no puede mantener las velocidades de fotogramas que son posibles al usar la combinación de varias texturas.

Para realizar la combinación de texturas multipaso en una aplicación de C/C++.

  1. Establezca una textura en la fase 0 de textura llamando al método IDirect3DDevice9::SetTexture.
  2. Seleccione los argumentos y operaciones de combinación alfa y color deseados con el método IDirect3DDevice9::SetTextureStageState. La configuración predeterminada es adecuada para la combinación de texturas multipass.
  3. Representar los objetos adecuados en la escena.
  4. Establezca la siguiente textura en la fase de textura 0.
  5. Establezca los estados de representación de D3DRS_SRCBLEND y D3DRS_DESTBLEND para ajustar los factores de combinación de origen y destino según sea necesario. El sistema combina las nuevas texturas con los píxeles existentes en la superficie de destino de representación según estos parámetros.
  6. Repita los pasos 3, 4 y 5 con tantas texturas como sea necesario.

de mezcla de texturas