Comida de gatos - breakdown
El otro día publiqué una imagen muy sencilla, que realicé para probar unas cuantas cosas que tenía pendientes. Un par de técnicas fotográficas, mi nuevo Promote Control, unos mapas procedurales de Substance Designer, técnicas "guerrilla" de neutral grading en Nuke y alguna cosa más.
Dejo aquí un breakdown, también muy sencillo, de como realicé la imagen.
- Lo primero que hice fue fotografiar el "plate". El fondo que iba a utilizar para integrar mis elementos CG. Mi intención desde el principio era crear una imagen extremadamente sencilla, ya que solo iba a tener 3 o 4 horas para realizar la tarea de principio a fin. Pretendía que fuese una imagen realista, no sólo en cuanto a estética, si no en significado, mundana, casual. Así que era importante que el encuadre fuese malo, la composición poco interesante, la intención de luz inexistente, etc. Algo así como la típica foto que alguien pondría en las redes sociales con un comentario banal. Es decir, una imagen carente de valor narrativo de ninguna tipo.
- Cuanta más información tengamos a la hora de componer elementos 3D en una imagen real, mejor será el resultado. En los meta-datos de la fotografía, se puede acceder a la información focal y del tamaño del sensor de la cámara, para posteriormente replicarlos en un software 3D.
- También es muy importante tener referencias de color. Utilizando una simple Macbeth Chart podemos hacer "neutral grading" de la fotografía, y derivar las correcciones que hagamos a cualquier otro material que creemos.
- El siguiente paso, es recoger la iluminación lumínica del set. En este caso, como no podía ser de otra forma, es un trabajo muy sencillo, ya que no hay fuentes lumínicas artificiales. Simplemente hay una puerta de cristal bastante grande fuera de plano, a la derecha de la imagen. Esa es la única fuente lumínica que va a afectar a nuestros elementos CG. También hay unos óculos en el techo, pero de poca intensidad, y son muy peqeños, así que su contribución a la escena es más bien nula.
- Dicho esto, un solo HDRI panorámico es más que suficiente para replicar la información lumínica del set. Ni siquiera hace falta extraer la puerta de cristal para mapearla en una luz CG, simplemente el panorama en si mismo será suficiente.
- Para que esto sea posible, el HDRI tiene que tener un rango dinámico muy grande. En este caso, las zonas más brillantes tienen un valor lineal entorno a 252.00000
- Fijáos como ni siquiera me he preocupado de corregir el HDRI, he dejado intacto la zona del trípode, y hay algunos problemas de ghosting. En este caso en particular se que no me van a traer ningún problema.
- Muy importante, tener en el HDRI referencias de color y de luz/reflejos. Por eso en la zona donde pensaba colocar mis elementos CG he puesto un Macbeth Chart y un lighting checker Mono de akromatic.
- Una vez terminado el HDRI, es muy importante tener referencias de iluminación y color en el contexto del plano. Por eso he hecho un par de fotos con mi Macbeth chart y mi lighting checker "Mono"
- El plano no es exactamente igual al plano final, pero los objetos referencia están colocados en la misma posición donde estarán colocados los objetos CG. También la exposición media utilizada para las fotografías es la misma que cuando realicé el "plate".
- En este trabajo no hace falta realmente hacer tracking o matchmoving, ya que es un solo frame, además con una cámara cenital. Es muy sencillo crearse una cámara con el mismo focal que la fotografía y recrear la perspectiva. Tener un ángulo de 90 grados entre el suelo y la estantería, hace que el trabajo de cámara sea cosa de segundos.
- El modelado, como ya imaginabais, es también algo muy fácil.
- El texturizado también es muy sencillo. Basta con buscarse 3 o 4 referencias interesantes y recrearlas lo más fielmente posible. Para unos objetos tan básicos, con solo 3 canales de textura tuve más que suficiente. Hice un mapa de diffuse, un mapa de especular y un mapa de bump para cada uno de los 5 objetos de la escena. Cada uno de ellos a 4k de resolución y un solo UDIM.
- En cuanto a iluminación se refiere, como ya dije, Image Based Lighting fue mas que suficiente. Un environment light con mi mapa HDRI.
- Es importante que tanto el mapa HDRI como el "plate" de fondo tengan el mismo grading. Como la exposición media utilizada para fotografiar ambos es la misma, y como tenemos Macbeth Charts en las dos fotos, hacer neutral grading es muy sencillo, y todo funciona a la perfección.
- Los lighting checkers de akromatic nos ayudarán a orientar el HDRI para que coincida con el plate y a regular la intensidad lumínica y su atenuación. En este caso no estoy recreando el set por completo, así que por ejemplo no tengo creado un suelo que debería sustraer algo de intensidad debajo de la bola. Pero para este particular ejercicio, no importa demasiado.
- Una vez tenemos la orientación, intensidad y grading de nuestro setup IBL, es conveniente hacer un "clay render" para observar el comportamiento de las sombras.
- En este caso funcionan a la perfección, y es precisamente debido al enorme rango dinámico del mapa HDRI utilizado. Con HDRIs de ambientes soleados, es mucho más fácil que un mapa "clampeado" reproduzca bien las sombras, pero con un ambiente nublado o iluminación uniforme, es más complicado y necesitas un rango muy amplio para conseguir sombras correctas.
- El render obviamente es muy rápido, no sabria decir exactamente cuanto pero alrededor de 4 minutos a una resolución de 4000x3000
- La composición también muy sencilla. Todo va en el mismo render pass, con 5 AOVs distintos. Direct diffuse, indirect diffuse, direct specular, indirect specular y refraction.
- También saque otro pass de ID's para tocar algunos elementos de forma individual.
- Y finalmente queda algo tal que así.
Comida de gatos
Trabajo rápido que realicé el otro día.
Simplemente quería probar mi nuevo Promote Control para el bracketing del HDRI que creé para utilizar en este render. He intentado realizar una imagen muy simple, que se pudiese hacer de principio a fin en unas pocas horas. Intenté mantener una estética realista, con pequeños detalles, un mal encuadre, mala composición, sin ningún tipo de intención lumínica.
Solo he querido crear algo rápido, sencillo, y realista, en su término mas amplio, sin ningún tipo de componente cinemático. A fin de cuentas, así es la realidad no?
Curso UV Mapping para VFX
Ya está disponible nuestro nuevo curso UV Mapping para proyectos de efectos visuales.
Casi 12 horas de formación profesional en tareas de UV Mapping. Teoría básica, ejercicios prácticos, ejemplos de producción, etc.
Échale un vistazo al temario detallado en la pagina del curso.
IBL y sampling en Clarisse
Utilizar IBL con grandísimos rangos dinámicos para iluminación en VFX es sencillamente genial. Generan unas condiciones lumínicas consistentes, con mucho detalle y el comportamiento de las sombras es fantástico.
Lo malo es que samplear esos valores tan altos en las fuentes lumínicas, especialmente el sol, no es nada fácil, y este tipo de HDRIs pueden generar muchísimo ruido y otros artefactos. Para solucionarlo, generalmente recurrimos a trucos como crear imágenes HDRI de baja resolución y blureadas, o crear versiones con valores clampeados de los mapas en Nuke.
Afortunadamente en Clarisse podemos tratar este problema de forma sencilla.
Los samples de shading, lighting y anti-aliasing se tratan de forma completamente independiente en Clarisse. Puedes manipular cualquiera de ellos sin afectar a los demás, ahorrando un montón de tiempo de render. En muchos motores de render el sampling de shading es multiplicado por el anti-aliasing lo que obliga al usuario a re-ajustar todos los shaders para obtener tiempo de render decentes.
- Vamos a empezar con esta escena. Como ves, con muchísimo ruido.
- Lo primero que tenemos que hacer es cambiar el tipo de interpolación del Map File donde tengas tu HDRI a MipMapping.
- Después tenemos que limpiar el ruido de los shaders, tocando el shading sample.
- Vete a raytracer y activa la opción previz mode. Esto eliminará toda información lumínica de la escena. Todo el ruido que veas aquí proviene de los shaders.
- En este caso tenemos mucho ruido ocasionado por la reflexión de la esfera. Veta al material de la misma e incrementa el valor reflection quality, en el apartado sampling.
- He aumentado el parámetro hasta 10 y ahora ya no veo nada de ruido en la escena.
- Selecciona de nuevo el raytracer y desactiva el previz mode. Todo el ruido que ahora vemos proviene de la iluminación.
- Vete al gi monte carlo y desactiva affect diffuse. Esto eliminará la contribución de la iluminación global y solo la luz directa afectará a la escena. Si ves ruido deberás de tocar el sampling de las fuentes de luz directas.
- Vete de nuevo a gi monte carlo y re-activa affect diffuse. El ruido presente será por culpa de la gi. Incrementa los samples hasta que desaparezca el ruido.
- Ahora el render ya no tiene ruido, aunque se ve un poco low-res. Esto es por culpa del anti-aliasing de geometría. Veta al raytracer e incrementa los samples. Ahora el render se vera perfecto.
- Finalmente hay un parámetro que funciona como sampling global. Como norma general no utilizarás este parámetro. Si lo subes al 100% el shading oversampling multiplicará el shading sampling por los sampling de anti-aliasing, como la mayoría de motores de render.
- Si quieres resultados rápidos para hacer look-dev o lighting, simplemente baja la calidad de la imagen. No tendrás renders perfectos pero será más que suficiente (y muy rápido) para establecer looks.
VFX footage input/output
Esta es una explicación rápida de como se maneja el footage de entrada y salida en un estudio de VFX, especialmentne hablando en relación a la gestión de color.
Shooting camera -> Lab
El material RAW grabado en set se envía al laboratorio. Allí es convertido a .dpx que es el formato estandard en cine. En ocasiones también se utiliza .exr aunque no es muy común.
Aún hay muchos proyectos rodados en película, no en digital. En este caso el laboratorio escanea los negativos para crear archivos .dpx digitales que se utilizarán a lo largo del proceso.
Shooting camera -> Dailies
El material RAW grabado en set se envía a dailies. El cinematógrafo, director de fotografía o DI aplican un LUT primario o color grading que se utilizará a lo largo del proyecto.
Los scans originales con el LUT aplicado se convierten en scans de baja calidad o Quicktimes para su distribución a las empresas que participan en la película.
Dailies -> Editorial
El departamento de editorial recibe los scans en baja calidad con el LUT aplicado. Este departamento utiliza estos scans para hacer los cuts iniciales y presupuestar.
Editorial -> VFX
Los estudios de VFX reciben los scans en baja calidad (Quicktimes) con LUTs aplicados. Utilizan este material basado en los cuts de editorial para presupuestar su trabajo.
Más adelante, utilizarán este mismo material como referencia para color grading.
Lab -> VFX
El laboratorio proporciona a los estudios de VFX los scans de alta calidad para trabajar sus efectos sobre ellos. Este material necesita que le apliquen el LUT.
Los estudios de VFX también deberán aplicar el mismo LUT a su trabajo creado desde cero en el estudio. Una vez terminado el trabajo, el estudio de VFX proporciona salida en .exr
VFX -> DI
DI realizará el color grading necesario para que el trabajo producido por VFX empate con los Quicktimes proporcionados por editorial.
VFX/DI -> Editorial
El material de alta resolución producido por el estudio de VFX vuelve a editorial para ser introducido en los cuts.
Un workflow práctico sería algo así.
- Leer el RAW scan.
- Leer el low scan Quicktime.
- .dpx normalmente están en un espacio de color LOG.
- .exr normalmente están en un espacio de color LIN.
- Aplicar LUT o color grading al material RAW para que empate con el material LOW.
- Renderizan para editorial utilizando el mismo color space utilizado que cuando se trajo el footage.
- Renderizar para Quicktime utilizando el mismo espacio de color que se utiliza en el visor. Si se va a ver en un espacio de color sRGB es necesario bakear el LUT.
- Buenos settings para Quicktime: Colorspace sRGB, Codec Avid Dnx HD, 23.98 frames, depth million of colors, RGB levels, no alpha, 1080p/23.976 Dnx HD 36 8bit
Digital Tutors: Rendering a Photorealistic Toy Scene in Maxwell Render
Mi nuevo tutorial publicado por Digital Tutors estará disponible muy pronto.
Aquí puedes ver un avance del mismo.