3ds Max Experimentando con mental ray

Hola a todos.
Antes de nada, decir que mis conocimientos de 3D son limitadísimos (por no decir nulos), y más aún esto de los motores de renderizado.
Hace unos pocos años me tocó familiarizarme con el "maravilloso" mundo de las infografías y fui a parar al famoso mental ray de 3ds Max. Sé que no es un motor muy popular y que no hay mucha gente que sepa utilizarlo, pero es el único que he tocado, y me gustaría aprender a manejarlo.
Me he bajado una escena muy sencilla de las muchas que circulan por la red y he decidido ponerme a hacer pruebas para ver como influyen los distintos parámetros en la calidad y en los tiempos de render, como tratar los diferentes materiales y luces, como jugar con los controles de exposición, ambient occlusion, … .
A ver hasta dónde soy capaz de llegar.
Ya sé que el foro es nuevo, pero cuelgo la escena por si alguien se anima. Yo trabajo con la versión que viene integrada en el Max 2009, creo que es la 3.6. Tengo entendido que ha mejorado mucho respecto a versiones anteriores. A ver si es verdad.

He colocado a todos los objetos un material arch&design de color gris claro y acabado mate; y de iluminación, un sistema daylight con un mr sun y un mr sky con control de exposición logarítmico (brillo 65, contraste 100).

Renderizando sin tocar nada obtenemos esto:
 
Al parecer, básicamente existen tres opciones de trabajo:

Mediante Global Ilumination (GI)
Mediante Final Gather (FG)
Mediante la combinación de ambos

Por lo que me he podido enterar, la diferencia entre GI y FG está en que GI usa el cálculo de los fotones emitidos por una fuente de luz al ser rebotada en los diferentes objetos de la escena para calcular la oclusión y la luz reflejada. Por su parte, FG asume que cada objeto emite una cierta cantidad de luz según el material y color.
Las dos técnicas tienen sus ventajas y sus inconvenientes. Parece ser que para exteriores suele funcionar bien FG, y para interiores la combinación de ambos, pero ya veremos. Con tiempo.

Bueno, pues vamos a ver que pasa utilizando únicamente Final Gather.
Activando FG en modo draft y tras 10 segundos de renderizado (con un AMD Athlon X2 con un procesador de 4800) obtenemos esto:

Cambiando el valor de los rebotes:

Parece que se consigue más luminosidad a costa de más tiempo de renderizado. He leido por ahí que duplicar el número de rebotes duplicaba el tiempo de renderizado, pero parece que no.
Bueno, para no haber hecho nada, no se ve tan mal :):)

Hay varios controles dentro del Final Gather. Los primeros son:
-Initial FG point density
-Rays per FG point
-Interpolate over num. FG points

Voy a ver si me entero para que sirve cada uno de ellos, y posteo algo.
 
Initial FG point density:
Este valor se refiere a la densidad de la rejilla de puntos de FG.
En la pestaña "processing", en el apartado "diagnostics", activamos la casilla "visual" y elegimos "final gather". Volvemos a renderizar cambiando los valores de Initial FG point density.

Por lo que entiendo, cada punto verde es un punto de FG. Desde cada punto verde, mental ray dispara un grupo de rayos en la escena para comprobar cuanta luz afecta a ese punto. El número de rayos se controla desde "Rays per FG point".
Mayor densidad de puntos significa más detalle y, por supuesto, más tiempo de render.
 
Traducido al render, en modo LOW vamos variando el valor de initial FG point density.

Parece que mayor densidad de puntos significa más detalle y, por supuesto, más tiempo de render. Además, a mayor densidad de puntos, más ruido en la imagen.
 

EXIT

Novel
Sí señor, la mejor manera de aprender, y además lo compartes, muchas gracias!:)

No manejo el Mental Ray, pero sé más o menos su mecánica. ¿No deberías aumentar el número de fotones? En Vray también pasa lo de el ruido al aumentar la densidad, y hay un par de parámetros que permiten corregirlo, claro está aumentando el tiempo de rénder. Cuando encuentres algo nos lo cuentas vale??-nunca está de más aprender nuevos motores...;)
 
Hola @EXIT, que bueno tener alguien por aquí.
Estos render son sin utilizar fotones. Lo explico en un post anterior.
Sólo utilizo FG (me parece que es algo parecido a irradiance map en vray, digo esto con la boca muy pequeña).
Tengo entendido que en mental ray, para interiores, lo mejor es combinar fotones con FG, pero yo sólo utilizo FG para ver cómo funciona. Después me pondré con los fotones.

En cuanto a lo del ruido, también he encontrado un par de parámetros para corregirlo. Estoy con uno de ellos, pero aumenta enormemente los tiempos de render. Hay otra alternativa, pero no la controlo todavía.
Posteo ahora los primeros datos.
 
Bueno, he realizado un par de pruebas modificando los valores de "rays per FG point".

Básicamente, aumentando este parámetro eliminamos ruido y … los tiempos se disparan.

Parece entonces la mejor alternativa ajustar en primer lugar la cantidad de detalle con el valor "Initial FG point density". Habrá que afinar bastante porque aumentando este valor conseguimos más detalle pero más ruido con lo que tendremos que utilizar más rayos con el consiguiente aumento de tiempo de renderizado.
 
Más pruebas:

Efectivamente, disparando más rayos, el ruido va desapareciendo, pero el tiempo de render aumenta una barbaridad. Una manera de que no se disparen los tiempos es jugando con los valores de "Interpolate Over Num FG Points". Todavía no entiendo muy bien cómo funciona pero aumentando el valor (que es 30 por defecto) se elimina ruido aumentando muy poco el tiempo de render por lo que constituye una buena alternativa a aumentar los rayos FG. Lo malo es que aumentando el valor se pierden detalles locales con lo que hay que emplearlo con cuidado.

Voy a intentar hacer unas pruebas para saber la mejor forma de implementar ambos parámetros.
 

EXIT

Novel
Buenas, he estado echando un ojo a la ayuda de max y me he ido enterando de tu proceso, más o menos;). Una cosa que no me ha quedado clara, con Global Illumination, sólo emiten fotones los objetos que le indiques o se puede sustiruir por una luz?? (si no sería un poco complicado usarlo para exteriores).

La última imagen que has colgado, ciertamente tiene más calidad, pero el tiempo de render es desproporcionado, en cuanto le pongas materiales un poco complejos se disparará demasiado, también estaría bien saber con qué máquina trabajas, para hacernos una idea.

La escena que has colgado, está disponible para max 9?? Yo utilizo la 9 y no me abre versiones posteriores, así que me he quedado ahí, jeje. Quería probar un poco también por mi cuenta, y hacer alguna comparación de tiempos/resultados con Vray, mira a ver si puedes hacer algo;).
 
La escena en 3ds es ésta. Creo que te vale,no?

Con GI lo único que sé es que se trabaja con la técnica de fotones, que todavía no sé muy bien lo que es. Tengo entendido que para interiores lo más rápido es utilizar GI combinándolo con FG. Es decir, con FG se suaviza el mapa de fotones. Es más rápido que lo que estoy haciendo yo, pero también más complejo. Por eso lo he dejado para después.

Yo estoy trabajando sólo con FG para saber bien como funciona, es decir, sin fotones.

También tengo entendido que para exteriores lo mejor es no utilizar fotones. Si consigo una escena de exteriores sencilla, pruebo y te cuento. Si tienes alguna a mano te agradecería que la subieras. Así me ahorro el trabajo.:):)

En cuanto a la máquina, lo digo en el primer o segundo post del hilo, un AMD Athlon X2 4800.
 
Pongo un par de pruebas para entender mejor qué significa eso de tener más o menos detalle en una escena (es que no lo tenía muy claro), es decir, la diferencia entre tener un valor alto o bajo en "initial FG point density".

Por cierto, las sombras se ven muy raras.
¿Alguien sabe dónde se controla esto?
Intentaré enterarme de todas formas.
 

EXIT

Novel
Ok, ya la tengo, voy a hacer yo mis pruebas y comparamos. Sobre las sombras, supongo que en la pestaña de la luz, en "softness" habrá que aumentarle el valor. Tiene pinta de trabajar como con las sombras de área, y es más o menos igual.
 
Correcto, @EXIT. Aparece Softness y softness samples.
Voy a probar para que sirve eso.
Es un sistema de luz diurna, supongo que habrá algo parecido en Vray.
Gracias.
 

EXIT

Novel
Bueno, he empezado a hacer mis pruebas, por el mismo camino que tú. Supongo que será cosa de la versión, pero me sale por defecto más iluminado que a tí en principio, he tenido que bajarle los multipilicadores a la luz.

En prinicipio estoy en modo low sólo con FG. Utilizo un core2duo E6600 con 3 Gb RAM DDRII.

Prueba con los FG point=20

FG points=100

FG points=200

De momento el tiempo no se me ha disparado, y parece que no es necesario aumentar demasiado los FG, con 100 la imagen es bastante aceptable.

Una cosa, srt_iceman, el texto de información, ¿se lo has añadido luego? Por que no encuentro una pestaña para automatizarlo...
 

EXIT

Novel
Pruebas con la calidad de las sombras. Lo dejo con FG points=100.

Softness=1/softness samples=8

Softness=1/softness samples=30

Softness=2/softness samples=30

Softness=1/softness samples=80

Parece que softness amplía la anchura del "difuminado de la sombra", mientras que los samples añaden más puntos. No se eleva demasiado el tiempo, merece la pena aumentarlo.
 

EXIT

Novel
He hecho la prueba con los mismos parámetros de la última imagen pero doblando los rebotes: sólo la aclara más. Parece que tampoco debemos pasarnos en los rebotes o nos saldrán sombras poco definidas.
 

EXIT

Novel
Cambiando el Noise Filtering de standard a High pasa esto:

Prácticamente el efecto contrario al que se espera. No sé si en versiones recientes esto es diferente, de momento mejor no tocarlo.

Grata sorpresa, sin embrago, con los interpolation samples, al aumentarlos de 30 a 100, efectivamente el tiempo apenas aumenta y reduce el ruido y mejora los contornos (hay que compararla con la última del anterior post)
 

EXIT

Novel
Interesantes también los parámetros Haze y Red/blue tint, de la pestaña del mr sky, ambientan bastante (hay que tocarlos muy poco, esto son muestras de ejemplo:D):

Haze=5

Red/blue tint=0,5

Mañana continuaré con los photon map, a ver si te animas cuando puedas y vamos comparando;)
 
Hola @EXIT, estupendas las pruebas.
Vamos por partes :D
1- Los textos no están automatizados. Estaría muy bien que lo estuvieran. Yo tengo una plantilla hecha en photoshop y los voy montando. Es un curro pero a la hora de ver las imagenes utilizo un visor de fotos (ya sabes, p´alante-p´atrás, para ver diferencias) y me ayuda un montón saber cuáles eran los valores de cada render.
2- No sé por qué te sale más iluminado que a mí. A ver si cuelgo un pantallazo para mostrar los valores que puse, pero no toqué casi nada la verdad.
Puse un sistema daylight con un mrsun y un mrsky (sin tocar nada).
En el cuadro de diálogo "environment & effects" (el de la tecla 8) puse en el background un mapa "mr Physical Sky" (en realidad lo hizo sólo el max cuando seleccioné la luz mr sky).
En el mismo cuadro de diálogo seleccioné un control de exposición logarítmico y activé la casilla "exterior daylight", jugando con los valores de brillo y contraste. Se recomienda un control de exposición fotográfico, pero esto es nuevo y no sé como usarlo, ya probaré.
Y creo que no toqué nada más.
3- Trabajando en modo low los renders son rápidos porque el valor de "initial FG point density" es bajo. El problema es que no hay detalle. Se ve bien en esta imagen renderizada en pocos segundos.
initial FG point density=0,1
rays per FG point=300
interpolation over num. FG points=30

El render se ve limpio pero no hay detalle. La mesa del centro parece que está en el aire. Se nota un montón también en la estantería de la pared, que parece que está separada de ella. Bueno, en realidad parece que todos los muebles están en el aire.

Para solucionar este problema aumentamos el valor de "initial FG point density"

El render se demora 5 o 10 minutos, depende del nivel de detalle que queramos conseguir. En este caso 7 minutos. Ahora los muebles parece que están fijados en la escena, pero hemos creado otro problema, y muy gordo :D:D: el ruido, las manchas.
Cuanto más detalle consigamos, más manchas aparecerán.
Esto se puede solucionar de 2 formas (que yo sepa): la mejor es aumentar los rayos. Con ello vamos eliminando las manchas sin perder detalle pero los tiempos de render se disparan. La otra es aumentar el valor de la interpolación. Esta opción lo que hace es lavar la imagen. El tiempo de render aumenta poco, pero se pierden detalles.
Por tanto, todo depende del tiempo que tengamos.

Pero..... tenemos otra opción muy interesante que se llama "ambient occlusion", que consiste en activar una pestaña en el editor de materiales (en alguno o en todos los materiales que tengamos en la escena). Dependiendo del tipo de material utlizado, la pestaña está en un sitio u otro.
Por cierto, acabo de leer que esto también existe en vray. Antes había algo parecido que se llamaba dirtmap (allá por 3d studio 6) pero era un coñazo. Ahora parece mucho más fácil.

Lo que se consigue se ve en esta imagen renderizada en 1 minuto. Es cuestión de toquetear los parámetros. Habrá que probar.

4- Lo del noise filtering no tengo ni idea de para qué sirve, pero me gustaría mirarlo.

5- En cuanto a lo del softness, también he hecho unas pruebas. Las cuelgo ahora, pero vamos, lo mismo que dices tú.

En fin, después de este ladrillo, seguiremos otro día :D:D

Saludos

Ahh, por cierto, corto y pego un comentario de un usuario de mental ray que había leído por ahí y que guardé porque parece interesante.

La tecnica de mapa de fotones (GI) es buena porque hace un cálculo físico preciso del comportamiento de la luz, no toma mucho tiempo y es reutilizable. Su desventaja es que no trabaja a nivel de detalle. Se concentra en la iluminacion general de la escena.
Final gather (FG) por si solo, no calcula rebotes (salvo que se active multibounce), tarda mucho en procesar. No hace calculos fisicos exactos del comportamiento de la luz. Su ventaja es que trabaja a nivel de detalle.

La combinacion de ambos es lo mas adecuado ya que con pocos fotones y el uso de final gather en su opcion DRAFT se pueden lograr buenos tiempos de render y buenos acabados.
 
Bueno, lo del tema de las sombras.

El parámetro softness determina la suavidad de la sombra. Disminuyendo el valor, aumenta la dureza de la sombra. A mayor valor, más suave y extendido es el borde.

Aumentando el muestreo (samples) aumenta la calidad de la sombra. Cuanto más suave sea la sombra, más alto tiene que ser este valor, con el consiguiente aumento en tiempos de render, aunque no aumenta demasiado.
 
Arriba