Material nodes muy muy lentos

kmk37 - 14/07/2009 22:09
Hoy le echado valor y me he puesto con los nodos de Blender. Los de composición son fáciles, funcionan como el Adobe Photoshop más o menos, los que me interesan son los de materiales.

El caso es que estoy intentando hacer un Shader para piel medio decente. Y cuando me he puesto con los nodos lo tiempos se disparan una barbaridad.

Ya un poco mosca, he probado a poner el material inicial directamente enlazado al output, es decir como funcionaría por defecto.

La diferencia de tiempos es enorme. Tan mal optimizado esta o es que la he cagado en algo?

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110104



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110105

StormRider - 15/07/2009 02:36
Hombre, pues yo he usado los material nodes alguna vez, y no por ello iba más lento el render, lo que sí, es que parece que tienes puesto un Subsurface Scattering, eso sí que hace que los tiempos aumenten un poco, quizás sea por eso.
Caronte - 15/07/2009 07:19
Esos dos renders no son exactos (mira el hueco del ojo), así que, mira a ver si tienes algo raro en el que tarda tanto.
kmk37 - 15/07/2009 13:42
Hombre Stormrider, el ss aumenta los tiempos, pero fíjate que ambos lo llevan. Caronte, esa diferencia que comentas es porque se me movió un poco la cabeza y los ojos no están en su sitio. En su ojo derecho se aprecia perfectamente, que lo único que pasa es que están un poco movidos.

Subo el blendfile, a ver si alguno tenéis tiempo y ganas y le podéis echar un vistazo, porque yo ayer estuve toqueteando y probando hasta las tantas y lo único que conseguí fue acabar de mala leche.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110133

kmk37 - 16/07/2009 15:00
Estaría guay que los que se hayan bajado el archivo, por lo menos, dijesen si les ocurre lo mismo que ha mí.
SHAZAM - 16/07/2009 15:05
Yo he sido uno de ellos, pero no he tenido tiempo de probarlo.
Caronte - 17/07/2009 08:21
Vaya lo siento, pero voy contra reloj porque tengo que acabar el proyecto en el que ando metido antes de tiempo y aquí en el trabajo donde sí tengo más tiempo, no puedo usar Blender.
GEKKONIDAE - 17/07/2009 10:39
¿Has probado a subir el error del s e ir bajándolo gradualmente?
kmk37 - 17/07/2009 12:12
Tampoco es para que os disculpeis hombre, con dar señales de vida ya es más que suficiente, muchas gracias por tomaros las molestias a pesar de ir tan agobiados.

¿Has probado a subir el error del s e ir bajándolo gradualmente?

?
No entiendo, el problema no es con el ss en general, sino con el ss dentro de un material node. Si le subo el error o desactivo el AO pues tarda menos, claro, pero la diferencia respecto a tener el botón de los nodos activado o desactivado sigue siendo enorme.

Además, he probado en escenas nuevas y ocurre lo mismo, en cuanto activas el ss, a tomar por culo, los tiempos se disparan.

Así que no sé, o hay un botón por ahí escondido, que diga que a los material nodes les tiene que hacer algo especial, o es un bug.

Aunque, me he bajado un blend de ben dansie, de una chica con piel realista y el render va perfectamente. Y tiene ss, claro.

Así que ya no sé que pensar.
SHAZAM - 17/07/2009 14:45
He quitado las luces de la escena y le he puesto un Sun, ha tardado un minuto y medio en renderizar.

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110256



He bajado los samples de las lamps, en una prueba con las luces que lleva tu escena, y el render ha sido de 10min20seg.

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110257



Conservando el setting tal cual lo has dejado el render ha tardado 13min26seg.

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110260



En esta prueba he cambiado el ray shadow por buf. Shadow en todas las lamps y ha tardado 2min10seg.

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110261



Podrías probar cambiando el setup de luces y/o utilizando diferentes tipos de lamps, creo que por ahí van los tiros. Luego le dedico otro rato.

Por cierto, las pruebas las he hecho en esta máquina, en todas con el Subsurf activado en 2 niveles:
Intel Core Quad.

Q6000 @ 2.40 Ghz.
3,50 Gb de RAM.

Nvidia Quadro FX 1700.

Como verás, es un PC normal.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110256



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110257



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110260



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #110261

kmk37 - 17/07/2009 15:46
Muchas gracias Shazam, pero entonces, es normal tanta diferencia en los tiempos de render solo con activar los nodos?
Porque si es así, en vez de optimizar las lamps, casi que prefiero tirar el render tal como lo tengo (que sin nodos me tarda 2 minutos) y utilizar los composite nodes.
SHAZAM - 17/07/2009 19:31

Es normal tanta diferencia en los tiempos de render solo con activar los nodosí.

No creo, no debería, además de agilizar el flujo de trabajo y permitir materiales más complejos los nodos por lo menos tener los mismos tiempos de render que el método clásico. Casualmente debo repasar este tema estos días, si doy con el meollo del asunto me paso por aquí a explicarlo.
kmk37 - 17/07/2009 22:50
Dios. Por fin. Y además la respuesta estaba en la wiki. Tres días botóneando por idiota. Esto es lo que dice: Although it works quite well todo have a full material available as a node, it can result in very Slow rendering when múltiple nodes require shadow or Raytracing results. This can be solved by recoding the Core internal rendering loop todo be made more pass aware. Meaning, before Blender starts executing the nodes, the required AO render, shadow or RayTrace results can be precalculated.

Parece que los nodos no se llevan bien con el Raytracing, basta con cambiar las luces a shadow buffer y quitar el AO.

Sigue habiendo una diferencia en tiempos, pero vamos, algo mínimo.

Me miraré algún tutorial para bakear el AO y fuera.

Muchas gracias por tu interés Shazam.
SHAZAM - 17/07/2009 23:16
No es nada, una satisfacción haber echado un cable.