Este post es una traducción del original escrito en Octubre del 2011 en el blog de Xuan Prada.
Sub Surface Scattering o SSS es un shader que funciona realmente bien, creando unos resultados magníficos, cuando disponemos de un buen setup de iluminación. Pero en algunas ocasiones, puede ser un shader muy caro, especialmente si renderizamos con Mental Ray.
Dejo aquí abajo un par de técnicas que nos pueden ayudar a falsear el SSS para renderizar mucho mas rápido a costa de disminuir la calidad del shader.
- Para este ejemplo estoy utilizando una escena muy sencilla. Solamente una luz principal (key light) en la izquierda, y una luz de relleno (fill light) en la derecha. También una luz de contorno (rim light) en la parte posterior.
- Conecta un compound simpleSSS al input surface de tu material, y un SSS_lightmap al lightmap input del shader simpleSSS.
- Puedes encontrar el SSS_lightmap en render tree -> user tools.
- El SSS_lightmap va conectado al input lightmap de tu material.
- Escribe la salida y la resolución de tu lightmap.
- Lanza un render y chequea los tiempos.
- Desconecta el nodo lightmap.
- Renderiza de nuevo y comprueba los tiempos, estos deberían de haber mejorado.
- Si realmente necesitas disminuir tus tiempos de render, y la calidad pasa a un segundo plano, puedes hacer un bake del SSS a textura, para utilizarla posteriormente en un shader constante.
- Ahora puedes utilizar un shader más barato como blinn, phong o incluso constant e incluir tu textura bakeada.
- Como podrás comprobar, los tiempos de render son muchísimo más rápidos.