General / 10 February 2019

Reducción de ruido en render

Reducción de ruido en render


En este pequeño artículo escribiré sobre como evitar el ruido a la hora de renderizar nuestro proyecto, para ello lo más importante será identificar de dónde proviene.

Las causas más comunes son:

Profundidad de campo (Depth of Field)

Desenfoque de movimiento (Motion Blur)

Luz Difusa (Diffuse)

Especular (Specular)

Sombras (Shadow)

Especular indirecta (Indirect Specular)

SSS (Subsurface scattering)

Volúmenes (Atmospheric Volume)

Hay que tener en cuenta que la aparición de este ruido en nuestras imágenes de render pueden provenir de un insuficiente muestreo (Sampling), pero si incrementamos estos valores se pueden disparar los tiempos de render.

Para agilizar el proceso es muy útil renderizar los diferentes AOVs. Esto nos permitirá identificar claramente de donde proviene el ruido.

 

RUIDO VISIBLE EN:

“SAMPLES” a ajustar

Alpha channel

Camera (AA) samples

Indirect Diffuse

Diffuse Samples

Direct Specular (specular noise)

Light samples

Direct Diffuse (shadow noise)

Light samples

Indirect Specular

Specular samples

Transmission

Transmission samples

SSS(direct and indirect)

SSS(direct and indirect) samples

Volume

Volume samples (también puede provenir de las luces)

 

Una breve explicación de los parámetros principales de Arnold:

Camera (AA) = Trabaja como multiplicador del resto de parámetros y controla el número de rayos por píxel que son lanzados desde la cámara. Por ejemplo, un valor de 4 significa 4×4=16 pixel samples. Normalmente para una imagen de una calidad media sería un valor de 4, una imagen con buena calidad 8. (estos son los valores entre los que nos deberíamos mover para economizar nuestro tiempo de render). Debemos tener en cuenta con lo mencionado anteriormente sobre su funcionamiento como multiplicador que si aumentamos este valor por ejemplo a 6 y en otro parámetro, pongamos transmission = 6, significa que 62 x 62 estaríamos hablando de 1296 rayos por píxel a la hora de calcular la transmisión. Esto hace que sea importante controlar este valor ya que se nos puede disparar el tiempo de render.

 

Diffuse = Aumentaremos este parámetro cuando tengamos ruido en nuestra luz indirecta (como anteriormente mencioné, es importante sacar los diferentes AOVs para no perder tiempo en determinar dónde se genera el ruido en nuestra escena) este ruido se produce en el AOV = indirect diffuse.

 

Specular= Refiriéndonos a ello de una manera físicamente correcta, es la luz generada mediante la reflexión de la luz en una superficie especular, donde estos rayos incidentes se reflejan con un ángulo igual al de incidencia. A veces puede causar confusión si modificamos éste parámetro y no notamos resultados. En caso de no notar mejoría en el ruido reduciremos el número de Samples y de Ray depth de “Specular” a cero, si este ruido desaparece entonces es debido a las reflexiones especulares.

 

Transmission = Reduce el ruido producido por la Refracción de la luz. Decir que es de las propiedades más “caras” a la hora de renderizar y dónde más puede aumentar el tiempo de render.

 

SSS (Subsurface Scatter) = Esta propiedad nos da una dimensión mas realista de los objetos, sobre todo aquellos que son translúcidos. Es la penetración de la luz dentro de ellos y la manera en como se difumina interiormente antes de salir de nuevo del objeto. Al igual que la transmisión es un valor muy sensible para el tiempo de render.

 

Volume Indirect = Este parámetro calcula la luz indirecta en los volúmenes de nuestra escena, es decir, el rebote interno de la luz dentro de nuestro humo, fuego, nubes… Otro de los parámetros más costosos en render.

Una vez haya desaparecido el ruido de nuestra escena, solo nos queda subir un parámetro más… La paciencia!!