3.4. Materiales: Parámetros ModulablesHasta ahora nos hemos centrado en definir las propiedades de las fuentes de luz de la escena. Como comentamos al inicio de la sesión, la representación final de un objeto vendrá determinada por el material y cómo éste refleja la luz. La manera de reflejarla determina el color y aspecto que un objeto tendrá en la imagen. En términos muy generales, un material absorbe ciertas frecuencias de luz y refleja otras. La parte que refleja, que es la complementaria de la que absorbe, se usa para calcular el color que corresponderá a un determinado punto de la superficie tal y como es visto desde la cámara. ![]() Figura 01. Preview. Las propiedades de los materiales en blender se especifican en los botones sombreado PreviewLa pestaña preview (ver Figura 1) ofrece una previsualización del aspecto del material. Es posible elegir entre varios objetos a los que se puede aplicar el material para previsualizarlo. El último botón de la columna sirve para aplicar el Antialiasing en la previsualización. ![]() Figura 02. Links and Pipeline. Links and PipelineEste panel crea nuevos materiales y controla el modo en el que el motor de render trabajará con los materiales. Cuando se añade un nuevo objeto en la escena no tendrá ningún material asociado. En ese caso, podemos reutilizar alguno que ya exista en la escena, empleando la lista desplegable de la pestaña (ver Figura 2), o pinchar en Add New. El nombre del material se especifica en la entrada de texto MA: situada en su derecha. Al igual que ocurría con las mallas que podían estar compartidas por varios objetos (ver Figura 05 de la sección 2.1), si a la derecha del nombre del material aparece un botón con un número indicará que ese material está compartido por varios objetos. Como ya vimos, pulsando sobre ese botón se crearían copias independientes (en este caso, del material). El siguiente botón marcado con una X permite eliminar la referencia de ese material con el objeto. El botón del coche hace que Blender elija un nombre automáticamente para el material. El último botón etiquetado con una F hace que Blender añada un usuario "fantasma" del material para que no se elimine totalmente, incluso si no hay ningún objeto que lo tenga aplicado. A continuación hay una serie de botones agrupados en Render Pipeline (ver Figura 2), de los cuales comentaremos algunos de los más utilizados: ![]() Figura 03. Pipeline.
HalosLos halos sirven, entre otras cosas, para simular los destellos que se producen en las cámaras reales cuando la luz del sol incide sobre ellas. En Blender un material que tenga el botón Halo activo producirá que en cada vértice del objeto que lo utilice se defina un Halo. Si activamos el botón Halo de la pestaña Links and Pipeline, aparecen nuevos controles y botones en la pestaña Material y en la pestaña Shaders (ver Figura 4). En Material básicamente podemos definir los colores del Halo Halo, de las líneas Line y de los anillos Ring. ![]() Figura 04. Opciones Halo. La pestaña Shaders cambia completamente el contenido que habitualmente presenta (ver Figura 4). La columna de botones de la derecha Flare, Rings, Lines... añaden componentes al Halo (líneas, estrellas, anillos...). Mediante el parámetro HaloSize controlamos el tamaño de render del Halo, Hard define cómo de afilado se dibujará el Halo, Add añade intensidad al color del Halo. El siguiente grupo de controles Rings, Lines y Star definen el número de elementos de ese tipo que se dibujarán (siempre que estén activos los correspondientes botones de la columna de botones de la derecha). En la figura 5 se muestran algunos ejemplos de halos conseguidos tras aplicar a un cubo (8 vértices) un material que combina varios de estos elementos. ![]() Figura 05. Diferentes configuraciones de Halos. Material![]() Figura 06. Material. En la pestaña de material se establecen las propiedades de alto nivel del material, como el color, transparencia y propiedades básicas de render. A continuación veremos algunas de las más importantes. Si recorremos la pestaña desde arriba, lo primero que nos encontramos son dos iconos con forma de flecha (ver Figura 6), que permiten copiar y pegar las propiedades del material. Pinchando sobre A continuación hay un grupo de botones que definen propiedades básicas específicas del material (por ejemplo, el botón Shadeless si está activo hace que el material no muestre ninguna sombra, consiguiendo en el render un color plano totalmente. Algunos de estos botones los utilizaremos para tareas concretas más adelante. ![]() Figura 07. Selector de color. La zona más ampliamente utilizada de esta pestaña es la definición de colores. Blender define tres colores en esta pestaña:
Finalmente, el parámetro de opacidad Alpha se especifica en la última barra deslizadora, etiquetada con A. ShadersExisten varias formas en las que un material puede reflejar la luz. En ocasiones puede depender de la dirección de la cámara, de la posición de la luz y de otros factores. El enfoque que daremos en esta sección será muy práctico y enfocado a los programas de generación de imagen. A la hora de generar el color de un punto de la escena tal y como es visto desde la cámara, lo que nos interesa es la cantidad de energía que se refleja desde la luz en una dirección determinada (hacia la cámara). En informática gráfica se suele distinguir entre dos tipos de reflexión: difusa y especular. A pesar de que hay términos intermedios, se explicará cada una por separado. En realidad son dos casos particulares de un modelo general, físicamente más fiel, que no discutiremos ahora. Reflexión difusaLa reflexión difusa total se da cuando un material refleja la luz en todas las direcciones posibles. Este efecto se debe a la rugosidad microscópica del material de la superficie. Ejemplos de materiales típicamente difusos son la tiza, el papel mate, la tela, etc. Los fotones, a una escala muy pequeña encuentran imperfecciones en la superficie que los hacen rebotar en múltiples direcciones. Este modo de reflexión de la luz tiene una propiedad muy importante, y es que se percibe con la misma intensidad independientemente del ángulo de visión. La intensidad de un punto por reflexión difusa no depende del punto de vista. Para controlar la componente difusa en Blender emplearemos alguno de los múltiples Shaders que implementa, dentro de la pestaña Shaders. La primera lista desplegable de esa pestaña (ver Figura 8) nos permite elegir entre alguno de los siguientes shaders:
![]() Figura 08. Modelos de reflexión difusa. Reflexión especularAlgunos materiales (en cierta medida todos) reflejan la luz con un cierto sesgo en la dirección de reflejo según la normal de la superficie. Cuando en gráficos por computador se refiere el "brillo especular" se refiere a la luz reflejada mayoritariamente en una dirección dominante. Un claro matiz de este efecto frente a la reflexión difusa es que no es independiente de la dirección en la que mira el observador. Si por ejemplo cogemos un objeto de plástico con brillo y lo ponemos bajo una o más fuentes de luz luces, observaremos que según nos movemos, la posición de los brillos cambia. Esto es debido a que sólo se observa este fenómeno en un punto cuando lo miramos en una dirección determinada. La intensidad del reflejo varía suavemente según nos alejamos del rayo reflejado. De ahí que no observemos unos brillos como círculos nítidos, sino una mancha difuminada que va desvaneciéndose poco a poco según nos alejamos del centro. Obviamente, la forma de estos brillos no es siempre circular. De hecho depende de la geometría del objeto. En una esfera el reflejo de una luz puntual será siempre un círculo difuminado. Pero en un objeto irregular, los brillos se deforman con la superficie. ![]() Figura 09. Modelos de reflexión especular. Es difícil calcular este efecto por un método físicamente correcto. Además la forma varía mucho con el material. Por ello existen varios métodos para aproximar el efecto y conseguir resultados aceptables. Blender incorpora varios Shaders para lograr diferentes efectos en brillo especular:
En la pestaña Shaders hay otros controles disponibles para modelar más propiedades del material. Comentaremos a continuación algunas de las más utilizadas:
Mirror Transp![]() Figura 10. Mirror Transp. Aún hay un aspecto importante de los materiales que no hemos visto. Hemos comentado la capacidad de reflejar especularmente una fuente de luz, pero no hemos hablado de la reflexión de otros objetos Ray Mirror o de la transparencia Ray Transp (si están activos, y además está activo el uso de RayTracing Ray en los botones de render De igual modo tendremos una componente de transparencia correspondiente a la luz que la superficie deja pasar. Elementos como el cristal carecen totalmente de componente difusa. Toda la luz que les llega es reflejada o transmitida. Una característica de la luz transmitida por materiales transparentes es que sufre una distorsión llamada refracción. Esto se debe a una diferencia entre la velocidad de la luz dentro del medio y fuera del medio. Cada material tiene un Indice de Refracción (IOR Index Of Refraction) directamente relacionado con la velocidad de la luz en su interior. Cuando se cruza de un medio a otro se calcula la distorsión en base a estos dos índices. Sin embargo, en los gráficos por ordenador no se recurre a tanta precisión física. En lugar de usar el índice absoluto se usa el índice relativo al del medio en el que se encuentra la escena, generalmente el aire. Además de activar la transparencia por raytracing, hemos también de controlar el índice de refracción (IOR). Como explicábamos antes, éste controla la cantidad de distorsión debida al cambio de medio. Un valor de 1.0 significa que no habrá refracción y por tanto tampoco distorsión. El agua tiene un IOR de 1.33, el cristal de 1.5, etc. Con estas referencias del mundo real y otras que podamos consultar podemos escoger adecuadamente un índice para el material que estemos diseñando. Por supuesto, cuanto más nos alejamos del valor unitario mayor será la distorsión. Como se ha comentado anteriormente, para elegir el color de la luz reflejada tenemos que ir a la pestaña de Material, en la caja de color Mir, aunque habitualmente es mejor dejar el color blanco por defecto. Igualmente hay que seleccionar la transparencia en el parámetro Alpha de la pestaña Material. En el ejemplo de la Figura 11, las propiedades que se muestran se corresponden con la cabeza de mono transparente. Las otras dos tienen únicamente propiedades de Ray Mirror. Los motores de render externos basados en algoritmos físicamente correctos, que estudiaremos en la sesión 5, permiten un mayor grado de realismo. ![]() Figura 11. Ejemplo de uso de RayTransp y RayMirror. Es posible apreciar que tanto en los controles de reflexión como en los de transparencia hay un parámetro al que no hemos prestado atención llamado Depth (profundidad). Este parámetro es un número entero que establece el número máximo de rebotes tanto para reflexión como transparencia. Cuando tenemos por ejemplo dos espejos enfrentados, en cada uno se puede ver la reflexión del otro. Pero además, podemos ver la reflexión de un espejo en el otro y a su vez en si mismo y así sucesivamente. Es equivalente a una pelota de tenis rebotando varias veces entre dos paredes. El programa de render lo que hace es calcular sólo un número máximo de rebotes. En materiales de baja reflexión es difícil apreciar más allá del segundo o tercer rebote. Únicamente en materiales transparentes sobre objetos muy complejos es necesario usar límites más altos.
Otros parámetros de la pestaña Mirror Transp:
SSS SubSurface ScatteringEsta propiedad fue añadida recientemente a Blender y permite simular el efecto de rebote de la luz dentro de los materiales. Muchos materiales (entre ellos, la piel) permiten que la luz rebote en su interior y salga posteriormente. La simulación físicamente correcta de este fenómeno es muy costosa, pero no es necesaria en muchos casos. Blender incorpora una emulación a esta propiedad que puede ser activada SubSurface Scattering en el panel SSS (ver Figura 12). A la derecha del botón de activación hay una lista desplegable que permite seleccionar una serie de configuraciones establecidas para facilitar la configuración de parámetros típicos en materiales como leche, piel, tomates, mármol... Las figuras 13 y 14 muestran la misma escena (en la 14 se ha utilizado el SSS con la configuración de mármol).
Para que se calcule el mapa de SubSurface Scattering, el botón SSS del grupo de botones de render
|