¿Cómo se crea un buen sombreador de metal?
Para diferentes metales y digamos más o menos erosionado / oxidado y así sucesivamente.
Sé que una diferencia de los materiales ordinarios es que el metal debería 'colorear' la luz especular, pero cuando hago eso con el oro, por ejemplo, simplemente se ve "amarillo", no metálico en absoluto.
Cualquier ayuda apreciada!
graphics
shaders
graphic-effects
Valmond
fuente
fuente
Respuestas:
Recientemente he creado sombreadores para metales limpios y cepillados para mi juego en progreso y estoy muy contento con los resultados.
Metal limpio: la característica más importante en mis experimentos fueron las reflexiones del entorno con mapas de cubos. Los implementé con entornos de renderizado a textura en tiempo real, pero también las imágenes estáticas a menudo dan buenos resultados y es más fácil desenfocarlas. La segunda característica más importante fue el efecto fresnel, que mejora las silhuettes de los objetos. Esto, por ejemplo, le da un aspecto más redondo a las bolas. La iluminación especular no es necesariamente necesaria, ya que el mapa de cubos puede proporcionar los aspectos más destacados directamente. La representación HDR también es importante para que los reflejos del mapa de cubos se vean bien.
Metal cepillado: para los metales cepillados se obtienen buenos resultados con bastante facilidad utilizando una textura de pincel, algo como esto, junto con iluminación anisotrópica. Para la iluminación anisotrópica, puede encontrar tutoriales de la web, pero implementé el mío usando blinn-phong como base, pero del medio vector eliminé el 80% de la dirección tangente. Esto significa que necesita tangentes o bitangentes además de las normales en sus modelos. Los reflejos del entorno son difíciles para el metal cepillado. Puede muestrear desde múltiples direcciones desde el mapa de cubos según las direcciones tangente / bitangente, pero es posible que necesite muchas muestras para obtener buenos resultados. Sin embargo, esto no es necesariamente necesario, ya que la textura y la iluminación anisotrópica con múltiples fuentes de luz ya se ven bastante bien. El resultado final en mi caso se ve así:
fuente
Como dijo Nicol en su comentario, hay muchas cosas que entran en un sombreador de metal de alta calidad. Para obtener los mejores resultados, su renderizador debe ser gamma-correcto y usar modelos de sombreado basados en la física (vea particularmente los dos documentos de Naty Hoffman en ese enlace).
Dadas esas cosas, la forma típica de hacer un material metálico es tener un color difuso muy bajo o inexistente y una alta reflectancia especular, que varía del 50% al 100% (en un espacio de color lineal). Como notó, para algunos metales el especular será coloreado.
Debido a que la apariencia del metal es completamente especular con poca o ninguna difusión, la reflexión será extremadamente importante. Si solo refleja puntualmente las luces puntuales, obtendrá la apariencia de un material negro ya que falta el resto del entorno (incluso un metal muy rugoso reflejará una imagen borrosa de su entorno). Una forma típica de obtener más reflexión es usar un mapa de cubos. Sin embargo, la reflexión realista en los gráficos en tiempo real es un gran tema, y hay muchos enfoques diferentes por ahí.
fuente