En el mundo real, la iluminación afecta nuestras vidas desde ángulos muy variados: permite distinguir siluetas y formas, afecta nuestros estados de ánimo (por ejemplo, las luces de una discoteca), nos alerta sobre peligros u otras indicaciones (semáforo, sirenas, etc.), nos entretiene, etc. Existen muchas fuentes de luz natural y artificial que nos generan muchas variables de iluminación. Intentar emular esas variables en un espacio 3D es el objetivo de las herramientas de iluminación en 3DSMAX. El programa basa a su representación de la iluminación en el ángulo que inciden los rayos en las caras de los objetos. Si este ángulo es perpendicular la iluminación es máxima, en ángulos menores esta irá decreciendo hasta desaparecer cuando los rayos queden tangentes a la superficie. En este apunte continuaremos con la iluminación artificial pero en este caso, veremos los tipos de sombreados de las luces Standard y sus parámetros de configuración más importantes. Estos también son válidos para sistemas como Daylight o similares.
Este apunte utiliza un archivo de base, el cual puede ser descargado desde el siguiente vínculo (en formato MAX 2021):
En este archivo base se muestran diversos objetos con distintos materiales aplicados y una luz de tipo directa, junto a su cámara respectiva. La idea es que en este archivo base aplicaremos los tipos de sombreado y probaremos los diferentes parámetros de estos, además de ejecutar renderizado en Scanline Renderer y en Mental Ray, si este último está instalado.
Parámetros extendidos de sombreado (Shadow Parameters)
Los parámetros extendidos de sombreado o Shadows Parameters dependen exclusivamente del tipo de sombra que elijamos para realizar el cálculo de sombras, ya que estos variarán sus funciones según el tipo de sombreado que se elija. Por esto mismo, se estudiarán por separado. Estos se ubican justamente debajo de los parámetros generales o Shadow Parameters.
Shadow Map Parameters
- Bias: su valor por defecto es 1. Bias desplaza la sombra acercándola o alejándola en relación al objeto u objetos que la proyectan. A medida que aumenta el valor de Bias, la sombra se esfuma hasta casi desaparecer.
Render normal de Shadow Map, con Bias en 1.
Render de Shadow Map, con Bias en 5.
- Size: su valor por defecto es 512. Size define el tamaño (en píxeles cuadrados) del mapa de sombras que se calcula para la luz. Aumentando los valores de Size se juntarán mejor los píxeles base, y por ello podremos generar sombras más duras aunque también nos dará mayor tiempo de renderizado si lo combinamos con otras opciones.
Render de Shadow Map con el valor 1000 en Size, donde notamos que la sombra es más definida.
Render de Shadow Map con el valor 3000 en Size, donde notamos que la sombra es mucho más dura y definida.
- Sample Range: por defecto es 4, y especifica en qué proporción del área comprendida en la sombra se promedia y por lo tanto, esto afecta a la suavidad de la arista de la sombra lo que implica que a mayor valor las orillas de las sombras serán más difusas y viceversa. Su rango va desde 0,01 a 50,0.
Render de Shadow Map con el valor 0,01 en Sample Range, donde notamos el mapa de sombras base.
Render de Shadow Map con el valor 8 en Sample Range.
Render de Shadow Map con el valor 16 en Sample Range, donde notamos que la sombra es más difusa.
- Absolute Map Bias: cuando está activado, el Bias del mapa de sombras no se normaliza sino que se basa en una escala fija, expresada en unidades de 3DSMAX. Cuando está desactivado, el Bias se calcula en relación con el resto de la escena y luego se normaliza a 1. Esto proporciona un valor de Bias inicial común en escenas de cualquier tamaño.
- 2 sided Shadows: cuando está activada, se tienen en cuenta las caras ocultas a la hora de calcular las sombras. Los objetos vistos desde el interior no reciben iluminación de las luces procedentes del exterior. Cuando está desactivado se ignoran las caras ocultas, lo que hace que las luces exteriores iluminen el interior de los objetos. Esta opción funciona si la casilla en el material llamada 2 Sided no está activada.
Render de Shadow Map con 2 Sided Shadows desactivado.
Render de Shadow Map con 2 Sided Shadows desactivado.
Ray Traced Shadow Parameters
- Ray Bias: su valor por defecto es 0,2. Al igual que la sombra Shadow Map, Ray Bias desplaza la sombra acercándola o alejándola respecto al objeto u objetos que la proyectan.
Render normal de Ray Traced Shadow, con Bias en 0,2.
Render normal de Ray Traced Shadow, con Bias en 5.
- Máx Quad tree Depth: ajusta la profundidad del árbol de cuadrantes utilizado por Raytrace. Los valores altos pueden mejorar el trazado de rayos (Raytrace) a costa de la memoria. Sin embargo, hay un valor de profundidad en el que la mejora del rendimiento queda desplazada por el tiempo que se tarda en generar el árbol de cuadrantes mismo. Esto depende de la geometría de la escena. Por defecto, su valor es 7.
- 2 sided Shadows: cuando está activada, se tienen en cuenta las caras ocultas a la hora de calcular las sombras. Los objetos vistos desde el interior no reciben iluminación de las luces procedentes del exterior. Cuando está desactivado se ignoran las caras ocultas, lo que hace que las luces exteriores iluminen el interior de los objetos. Esta opción funciona si la casilla en el material llamada 2 Sided no está activada.
Render de Ray Traced Shadow con 2 Sided Shadows desactivado.
Render de Ray Traced Shadow con 2 Sided Shadows desactivado.
Advanced Ray Traced Parameters
Basic Options: Selecciona el tipo de Raytrace o trazado de rayos que se va a utilizar para generar el sombreado. Podemos elegir entre tres opciones básicas que son:
- Simple: Proyecta un único rayo de luz en dirección a la superficie y en este caso, no se realiza ninguna alisación.
- 1 pass antialias: Proyecta un haz de rayos. Cada superficie iluminada proyecta el mismo número de rayos, cuyo número se define en el contador de calidad de 1 pase.
- 2 pass antialias: Es el modo habilitado por defecto y proyecta dos haces de rayos. El primer haz de rayos determina si el punto en cuestión está totalmente iluminado, sombreado o en la zona de penumbra (área débil) de la sombra. Si el punto se encuentra en la penumbra, se proyecta un segundo haz de rayos para afinar mejor los bordes. El número de rayos iniciales se especifica en el contador de calidad de 2 pases.
- 2 sided Shadows: al igual que en el caso de los otros tipos de sombreado, cuando está activada esta opción se tienen en cuenta las caras ocultas a la hora de calcular las sombras.
Antialiasing options: son las opciones de alisamiento de la sombra en la imagen final, las cuales permiten disminuir la pixelación de esta. En estas tenemos los siguientes parámetros:
- Shadow Integrity: define el número de rayos proyectados por una superficie iluminada. Por defecto, su valor es 1.
- Shadow Quality: define el número de rayos secundarios proyectados por una superficie iluminada. Por defecto, su valor es 2.
Podremos ajustar la calidad e integridad de las sombras dejando los valores por defecto o aumentando los rangos, los cuales van desde 1 a 15. Valores más altos generarán más pixelado en las sombras proyectadas.
Render efectuado con Shadow Quality y Shadow Integrity en 15.
- Shadow Spread: esta opción define el radio (expresado en píxeles) para desenfocar el borde de alisación de la sombra, y por defecto su valor es 1,25. Valores más altos generarán mayor desenfoque en los bordes de la sombra.
Render efectuado con Shadow Spread en 8.
Render efectuado con Shadow Spread en 24.
- Shadow Bias: esta opción define la distancia mínima a la que un objeto debe estar para proyectar una sombra, medida desde el punto que se sombrea. Esto impide que las sombras desenfocadas afecten a las superficies en que no deben proyectarse. A medida que se incrementa el valor de desenfoque, debería incrementarse también el Shadow Bias. Por defecto es 0,25.
Render efectuado con Shadow Bias en 5.
Render efectuado con Shadow Bias en 10.
- Jitter Amount: añade aleatoriedad a las posiciones de los rayos que generan el sombreado. Inicialmente, los rayos siguen un patrón muy regular que puede mostrarse en la parte desenfocada de la sombra como artificios regulares. La aleatoriedad transforma los artificios en ruido (noise), lo que en general suele resultar inadvertido para el ojo humano. Los valores recomendados de Jitter Amount son de 0,25 a 1,0. No obstante, las sombras muy desenfocadas o difusas requerirán un nivel de aleatoriedad mayor.
Render efectuado con Shadow Spread en 6,5 y valor de Jitter Amount en 5.
Render efectuado con Shadow Spread en 6,5 y valor de Jitter Amount en 25.
Area Shadows Parameters
Basic Options: Selecciona el modo en que se generan las sombras de área. Podemos elegir entre cinco opciones las cuales son:
- Simple: proyecta un único rayo desde la luz a la superficie. No se realiza ningún cálculo de alisación ni de luz de área.
- Rectangle Light: a partir de la luz, los rayos se proyectan siguiendo una matriz rectangular. Es la opción por defecto.
- Disc Light: a partir de la luz, los rayos se proyectan siguiendo una matriz circular.
- Box Light: a partir de la luz, los rayos se proyectan como si fueran una caja.
- Sphere Light: a partir de la luz, los rayos se proyectan como si fueran una esfera.
Antialiasing options: son las opciones de alisamiento del sombreado en la imagen final, y por ello son las mismas que en el caso de Advanced Ray Traced Shadows.
- Area Light Dimensions: Son las dimensiones que se aplican a una luz virtual que se emplea para calcular el sombreado del área, y se miden según la unidad en la que trabajemos en 3DSMAX. No afectan al objeto de luz real.
Según el modo de proyectar las sombras que elijamos, podemos definir 2 o las 3 dimensiones:
- Length: Define la longitud de la sombra de área.
- Width: Define la anchura de la sombra de área.
- Height: Define la altura de la sombra de área. Esta opción está disponible solamente si elegimos Box Light o Sphere Light en el menú Basics Options.
Render realizado con las opciones de Alisación por defecto, en el modo Rectangle Light y definiendo los valores de Lenght en 0,5 y Width en 1.
Render realizado con las opciones de Alisación por defecto, en el modo Rectangle Light y definiendo los valores de Lenght en 0,5, Width en 1 y Height en 0,5.
Shadow Map Parameters
- Map Size: su valor por defecto es 512. Size define el tamaño (en píxeles cuadrados) del mapa de sombras que se calcula para la luz. Aumentando los valores de Size se juntarán mejor los píxeles base, y por ello podremos generar sombras más duras aunque también nos dará mayor tiempo de renderizado si lo combinamos con otras opciones.
Render de Mental Ray Shadow Map con el valor por defecto 512 en Map Size.
Render de Mental Ray Shadow Map con el valor 5000 en Map Size.
Render de Mental Ray Shadow Map con el valor 20000 en Map Size.
- Sample Range: este valor especifica el área del mapa que se suavizará, eliminando partes del mapa según lo especificado por el valor que establezcamos en Samples. Si establecemos Sample Range en un valor mayor que cero, Samples también deberá tener un valor mayor que cero, para obtener un efecto de sombra suave. Por defecto el valor de Sample Range es 0, ya que con este valor se obtienen bordes de sombra suaves. En el caso de Samples, su valor por defecto es 4.
Render de Mental Ray Shadow Map con el valor 5000 en Map Size, con el valor 0,0 en Sample Range y valor 4 en Samples.
Render de Mental Ray Shadow Map con el valor 5000 en Map Size, con el valor 0,2 en Sample Range y valor 4 en Samples.
Render de Mental Ray Shadow Map con el valor 5000 en Map Size, con el valor 0,2 en Sample Range y valor 12 en Samples.
- Use Bias: si activamos esta casilla podremos habilitar Bias, el cual desplaza la sombra acercándola o alejándola en relación al objeto u objetos que la proyectan. A medida que aumenta el valor de Bias, la sombra se esfuma hasta casi desaparecer.
Render de Mental Ray Shadow Map con el valor 20000 en Map Size, con Bias en 0,5.
Transparent Shadows
- Enable Transparent Shadows: cuando esta casilla está activada, los mapas de sombras se guardan con varias capas o layers y por ello, pueden tener transparencia. Esti implica que la sombra se comporta de manera parecida a Raytraced Shadow ya que esta respeta la transparencia del material.
Render de Mental Ray Shadow Map con el valor 20000 en Map Size, con la casilla Transparent Shadows desactivada.
- Enable Color: cuando esta casilla está activada, el color de la superficie del material afecta al color final de la sombra. Si la desactivamos, podremos ahorrar tiempo de renderizado.
Render de Mental Ray Shadow Map con el valor 20000 en Map Size, con la casilla Color desactivada.
- Merge Dist.: esta opción establece la distancia mínima entre dos superficies para que se consideren “distintas”. Si dos superficies están más cerca que este valor, Shadow Map las trata como una sola superficie. Cuando se establece el valor en 0 (automático), mental ray calcula automáticamente el valor de distancia para usar. Valores de Merge Distance más grandes reducen tiempo de renderizado, pero reducen la calidad de las sombras. Por el contrario, valores bajos de Merge Distance aumentan el consumo de memoria y por ello, ralentizan la velocidad de renderizado.
Render de Mental Ray Shadow Map con el valor 20000 en Map Size, con el valor de Merge Dist. en 0,5.
- Samp./Pixel: establece el número de muestras (Samples) utilizadas para generar un píxel en el Shadow Map. Los valores más altos aumentan la calidad y el detalle del sombreado, a costa del tiempo de renderizado. Por ello, podemos aumentar el valor para suavizar y mejorar el antialising en la imagen final. Esta configuración es sumamente útil cuando las sombras son proyectadas por geometría finamente detallada. Por defecto es el valor 4.
Render de Mental Ray Shadow Map con el valor 20000 en Map Size, con el valor de Merge Dist. en 0,5 y valor de Samp./Pixel en 12.
Bibliografía utilizada: – Tutorial Luces y Sombras del profesor Sebastián Huenchual H., Carrera Animación Digital 3D, Instituto DGM. – 3DSMAX User Guide reference. – Manuales USERS 3DSMAX por Daniel Venditti. Ediciones MP, Buenos Aires, Argentina. – Base de conocimientos de Autodesk: https://knowledge.autodesk.com/ |