Es posible que no demasiada gente sepa que los modelos 3D pueden tener asociadas distintas texturas al mismo tiempo, pero ¿cómo se mezclan entre sí?. Para no liar mucho la explicación, cualquiera que haya hecho mezclas entre varias capas con el photoshop ya sabe los tipos de mezclas que se pueden hacer.
Muchos habréis utilizado mezcla aditiva, o multiplicativa u otras variantes. Básicamente lo que se hace es aplicar una operación a cada pixel de la textura (o mejor dicho, cada texel). Por ejemplo, si hacemos blending aditivo, la textura resultante se calculará como la suma entre las distintas capas de textura. De esta manera, la textura resultante será más clara por norma general.
Lo bueno de esta técnica es que podemos hacer modificaciones sobre una textura de forma que simulemos efectos tan diversos como sombras encima de un coche (lo utilizan en el Colin McRae) o los famosos reflejos metálicos o apariencia de cristal de algunos objetos.
También permite simular daños aplicando una segunda capa con golpes o arañazos. O los famosos vinilos del Need for Speed. La sombra de la mayoría de juegos (el clásico punto negro bajo el personaje) también le debe mucho a esta técnica. Aunque una de las más complejas (y útiles) aplicaciones es para aplicar varios tipos de textura a un terreno y simular caminos, zonas con vegetación o lo que se tercie.
Otra forma de aprovechar esta técnica es utilizar una textura con poco detalle para colorear el objeto y otra de más detalle para simular las imperfecciones del objeto (detail mapping). Además, como se apoya en el hardware apenas tiene impacto en el rendimiento.
- 25 de Junio de 2007 a las 12:46 am
KnudoW dice:
Tenía alguna idea de esto, pero no sabía que fuese tan similar a las capas del Photoshop… yo pensaba que con lo de los arañazos y eso por ejemplo, se usaba otra textura completamente distinta o algo así…
De dónde aprendes estas cosas? XD
Miguel Herrero dice:
Tampoco es que haya contado gran cosa
En cuanto tienes que hacer algo relacionado con gráficos en tiempo real lo más seguro es que tengas que aprenderlo por narices. Y no me refiero a OpenGL o DirectX, con motores de alto nivel como Irrlicht u Ogre también es algo que tienes que saber para aplicar materiales complejos a los objetos.


