Combinación de texturas multipaso (Direct3D 9)
Las aplicaciones de 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 multipaso. Un uso típico para la combinación de texturas multipaso 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, vea 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, consulta Combinación 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++.
- Establezca una textura en la fase de textura 0 llamando al método IDirect3DDevice9::SetTexture .
- 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 multipaso.
- Represente los objetos adecuados en la escena.
- Establezca la siguiente textura en la fase de textura 0.
- Establezca el D3DRS_SRCBLEND y D3DRS_DESTBLEND los estados de representación 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.
- Repita los pasos 3, 4 y 5 con tantas texturas como sea necesario.
Temas relacionados