|
Existen unas cuantas limitaciones para las texturas especiales que hemos visto (mapas de texturas, pigmentos normales y materiales). Para empezar, si hemos usado la sentencia "default" para establecer la textura por defecto para todos los objetos de nuestra escenas, no aceptará ninguna de estas texturas especiales. Éste es un mal menor, ya que siempre podemos declarar tal textura y aplicarla a todos los objetos de la escena. No nos impide hacer nada que no podamos hacer de otro modo.
La siguiente limitación es algo mayor pero, como pronto veremos, puede haber una fácil escapatoria. Si hemos trabajado con texturas superpuestas, ya sabremos que podemos apilar múltiples patrones de textura uno sobre otro (siempre que sean transparentes). Esta útil técnica da problemas cuando usamos texturas especiales como capas. ¡Pero hay una solución!
Por ejemplo, pongamos que tenemos una textura superpuesta llamada Speckled_Metal
, que produce una superficie de metal plateado, y le añade pequeñas marcas de
óxido por doquier. Más tarde decidimos, para darle un aspecto más oxidado, añadir unos parches de
óxido concentrado, aleatoriamente repartidos por la superficie. La solución obvia es crear un patrón de textura especial, con cierta transparencia, y usarlo como capa superior. Pero, por supuesto, no podemos usar esta textura especial como capa. Ello nos daría un mensaje de error. La solución pasa por darle la vuelta al problema e incorporar nuestra textura superpuesta como parte del patrón de textura especial, como hemos hecho en el siguiente ejemplo:
// Aquí se declara un pigmento para usar más tarde // en el patrón de textura de parches oxidados #declare Rusty = pigment { granite color_map { [ 0 rgb <0.2, 0, 0> ] [ 1 Brown ] } frequency 20 } // Y aquí se aplica // Observa que nuestra textura superpuesta original // "Speckled_Metal" es ahora parte del mapa #declare Rust_Patches = texture { bozo texture_map { [ 0.0 pigment {Rusty} ] [ 0.75 Speckled_Metal ] [ 1.0 Speckled_Metal ] } }
El efecto final es el mismo que habríamos obtenido de poder superponer la textura especial como una capa más de la textura superpuesta.
Con el arsenal de patrones, pigmentos, normales, acabados, texturas superpuestas y especiales, no hay prácticamente nada que no podamos hacer en el maravilloso campo de las texturas. Un número casi infinito de posibilidades ¡están esperando ser creadas!
|