Version: 2020.1
Standard Shader
Metallic vs. specular workflow

Contenido y Contexto

Cuando piense acerca de la iluminación en Unity, es bueno dividir los conceptos a algo que se llama el content (contenido) el item siendo prendido y renderizado, y el context (contexto), el cual es la iluminación que sale de la escena que afecta el objeto que está prendido.

El Contexto

Cuando ilumine un objeto es importante entender qué fuentes de luz están afectando el objeto. Usualmente hay fuentes de luz directas en su escena: Luces Game Object que usted puede colocar alrededor de su escena. También hay fuentes de luz indirectas como reflections (reflejos) y luz que rebota. Todas estas tienen un efecto en el material del objeto para darle el resultado final que la cámara ve a través de la superficie del objeto.

Esto no es una operación difícil y rápida, a menudo lo que se podría considerar “contenido” puede también hacer parte del contexto de iluminación de otro objeto.

Un buen ejemplo de esto sería un edificio situado en un paisaje desierto. El edifico tomaría la información de iluminación del skybox, y de pronto de la luz que rebota del suelo que lo rodea.

Sin embargo, puede que haya un personaje parado cerca de una pared del exterior del edificio. Para este personaje, el edificio es parte del contexto de iluminación - puede estar emitiendo una sombra, puede estar emitiendo una luz que rebota de la pared al personaje, o el personaje puede que tenga partes reflectantes que están reflejando directamente el edifico en sí.

El Contexto de Iluminación Por Defecto

At startup, Unity shows an empty scene. This scene already has a default lighting context available with ambient, skydome-based reflections and a directional light. Any object placed in that scene should, by default, have all lighting it needs to look correct.

Agreguemos una esfera a la escena, para ver el efecto que el contexto de iluminación por defecto tiene.

La esfera agregada utilizará el Standard Shader por defecto. En focar la cámara en la esfera resultará en algo así:

Mire el reflejo a lo largo de los bordes de la esfera al igual que el ambiente sutil, desde un color marrón (el fondo) hasta cielo azul (encima). Por defecto, en una escena vacía, todo el contexto de iluminación se deriva del skybox y una directional light (la cual es agregada a la escena por defecto).

Por supuesto que este es la configuración predeterminada, un solo reflejo de iluminación y cielo no es suficiente en la mayoría de casos. Usted puede fácilmente agrega más iluminación y reflection probes:

Para una visión profunda acerca de cómo los reflection y light probes funcionan por favor vea la documentación acerca de los light probes y reflection probes.

Skyboxes

Un Skybox, baked o procedural, puede ser una parte integral de la configuración de iluminación suya. Este se puede utilizar para controlar la iluminación de ambiente y los reflejos en sus objetos adicionalmente de renderizar el cielo. Los Skyboxes procedural también le permiten a usted configurar los colores de manera directa y crear un disco de sol en vez de utilizar un bitmap - más información se puede encontrar en la Documentación del Skybox

Mientras que reflejar el skybox puede ser útil para muchos objetos en su escena en particular con las escenas que toman lugar en el exterior, hay casos dónde usted necesita variar los reflejos que un objeto utiliza - puede que haya áreas oscuras en una escena en el exterior, como lo pueden ser los callejones o bosques densos, o usted puede tener áreas en el interior que requieren de reflejos para que coincida con cada cuarto.

Para satisfacer las necesidades de estos varios requerimientos de reflejos, Unity tiene reflection probes que le permiten a usted muestrar el ambiente en su escena en cierto punto en el espacio, para uso como una luz de ambiente y fuente de reflejo para cualquier objeto cerca de ese punto en vez del skybox por defecto. Los Reflection probes pueden ser colocados alrededor de su escena en cualquier ubicación dónde el skybox de la escena no sea suficiente o apropiado.

Global Illumination (Iluminación Global)

The concept of Global Illumination is integral to Unity. Both the Standard shader and Unity’s GI systems have been designed to play well with each other. The GI system takes care of creating and tracking bounced light, light from emissive materials and light from the environment. You can find the details here.

El contexto es una parte crítica de la visión general de la imagen. En este ejemplo usted puede ver cómo una escena refleja los cambios en el contexto, mientras que el contenido y la cámara se mantienen igual.

El contenido

El contenido es el término utilizado para describir los objetos en su escena que están siendo renderizados. Su apariencia es un resultado del contexto de iluminación que funcionan en los materiales que han sido aplicados a los objetos.

El Editor de Material

Cuando mire un material en el inspector que utiliza el Standard Shader, el editor muestra todos los parámetros para el material incluyendo texturas, blending modes, masking y mapas secundarias. De un vistazo, usted es capaz de ver qué características son utilizadas y puede pre-visualizar el material. Ya que el Standard Shader es impulsada por datos: Unity solamente utilizar el código shader requerido por la configuración que el usuario ha establecido para el material. En otras palabras, si una característica o una ranura de textura del material no es utilizada, no hay costo para este y la combinación shader es optimizada detrás de las escenas.

Recomendación: Usted puede Ctrl+click en la imagen miniatura de la textura para una pre-visualización más grande, que también le permite a usted revisar el contenido del color y los canales alpha de manera separada!
Recomendación: Usted puede Ctrl+click en la imagen miniatura de la textura para una pre-visualización más grande, que también le permite a usted revisar el contenido del color y los canales alpha de manera separada!

Cómo crear un material

El Standard Shader permite muchas configuraciones con el fin de representar una gran variedad de tipos de material. Los valores se pueden configurar con mapas de texturas o selectores de colores y deslizadores. Generalmente el UV mapping se requiere en conjunto con las texturas para describir la relación entre partes de su mesh y partes de un mapa de textura. El material del Standard Shader le permite a usted por lo tanto tener varias propiedades de material en el mismo mesh cuando se utilice en conjunto con specular y smoothness map o un metallic map. En otras palabras, usted puede crear caucho, metal y madera en un mesh dónde la resolución de la textura puede exceder la topología del polígono permitiendo unos bordes suaves y una transición entre tipos de material, claro está esto tiene implicaciones para una complejidad mayor en el workflow, pero esto dependerá en el método suyo de crear texturas.

Las texturas para los materiales tienden a ser generados de una o dos maneras - pintura y composición en un editor de imagen 2D como Photoshop, o renderizar / baking de su paquete 3D, dónde usted puede también utilizar modelos de alta resolución para generar sus normal maps y occlusion maps adicionalmente al albedo, specular y otros mapas. Este flujo de trabajo varia dependiendo en los paquetes externos utilizados.

Generalmente ningún mapa de textura debería contener una iluminación inherente (sombras, destellos, etc). Una de las ventajas de PBS es que ese objeto reacciona a la luz como usted esperaría, lo cual no es posible si los mapas ya tienen información de iluminación.

Standard Shader
Metallic vs. specular workflow