Estoy tratando de escribir un sombreador de hielo en Unity que se vea bien y al menos semi-realista.
Si la siguiente toma (que se encuentra en Google ) fuera CG, ¿qué incluiría su sombreador? (la cueva en primer plano). Puede que me equivoque, pero parece que incluso tiene un modelo de iluminación diferente al difuso predeterminado.
Respuestas:
El hielo es translúcido, por lo que creo que lo más importante que debe simular en su sombreador para obtener resultados realistas sería la dispersión del subsuelo o SSS para abreviar. Básicamente, SSS describe cómo los rayos de luz penetran en la superficie de los objetos translúcidos y se dispersan debajo de ella, reflejándose varias veces de manera irregular, antes de salir finalmente por una ubicación diferente.
Aquí hay una imagen que creo que demuestra muy bien el efecto:
De la imagen en su pregunta también podemos ver que el hielo es bastante reflectante, por lo que probablemente también desee combinarlo con algún tipo de mapeo de entorno para reflexiones, y también tonificar la especularidad para reforzar los reflejos.
También puede probar otras cosas, como agregar un poco de refracción , superponer algún tipo de textura de ruido para agregar un poco de variación, o incluso algún tipo de mapeo de relieve o mapeo de desplazamiento para detalles muy pequeños y sutiles.
Recursos
Algunos otros recursos que encontré al escribir la respuesta:
http://http.developer.nvidia.com/GPUGems/gpugems_ch16.html
http://graphics.ucsd.edu/~henrik/papers/fast_bssrdf/
http://www.jamiemccarter.com/Subsurface_Scattering_%26_Reflections_without_Rays.html
http://www.blender.org/development/release-logs/blender-244/subsurface-scattering/
http://littlecolourbakery.com/pages/research.html
fuente
Uno de mis alumnos hizo esto hace unos años (usando renderman) pero muchos antecedentes en la tesis http://nccastaff.bournemouth.ac.uk/jmacey/MastersProjects/MSc09/Salas/index.html
fuente