XSIforum.com

Problema con el premultiply en render

0 Usuarios y 2 Visitantes están viendo este tema.

baek

Problema con el premultiply en render
« en: 16 Julio 2011, 17:26:41 »
Buenas! Hoy he estado testeando el tema de render para un trabajillo personal, y he probado a tirar un render simple (con el Premultiply desactivado obviamente), y me sale la siguiente linea alrededor de los objetos:

El render es este:



Y aqui el problem (que se ve a simple vista en el render pero bueno xD...):






Tambien en el FXTree he usado un nodo over para ambos pases (Default pass y AO) y he probado a seleccionar la casilla Premultiply y la Not-Premultiply (las he probado todas vamos XDDDD).

Mi version de Softi es la 2012,por si ha cambiado algo respecto a las anteriores. Alguna posible solucion a esto?
« Última modificación: 16 Julio 2011, 17:32:16 por baek »

Re: Problema con el premultiply en render
« Respuesta #1 en: 17 Julio 2011, 10:49:35 »
 Llevalo a un soft de compo y aplica algún nodo de recorte de alpha/mascara/selección al pase del neumático

Re: Problema con el premultiply en render
« Respuesta #2 en: 17 Julio 2011, 13:35:27 »
Necesitas multiplicar el color por el alpha.

Para que te hagas una idea, una operacion Over lo que hace es restar al background el alpha de la capa de foreground y luego suma el color resultante al color del foreground. El caso es que si tu color no esta multiplicado por el alpha tienes informacion "incorrecta" en pixeles transparentes, por lo que al sumar te da ese resultado.

baek

Re: Problema con el premultiply en render
« Respuesta #3 en: 17 Julio 2011, 15:19:45 »
Necesitas multiplicar el color por el alpha.

Para que te hagas una idea, una operacion Over lo que hace es restar al background el alpha de la capa de foreground y luego suma el color resultante al color del foreground. El caso es que si tu color no esta multiplicado por el alpha tienes informacion "incorrecta" en pixeles transparentes, por lo que al sumar te da ese resultado.

Ajam, gracias por la respuesta Mr.White, ahora mi nueva duda respecto lo que has dicho, para multiplicar el color por el alpha y que no sea "incorrecta" esa informacion a esos pixelazos, como lo podria hacer? hay alguna opcion dentro de render options o lo tengo que hacer poniendo los neumaticos por separado en passes y meterme en compo?

Respecto al tema de composicion tengo bastantes dudas, no estoy tan avanzado en esto xDDD.

Gracias!

Re: Problema con el premultiply en render
« Respuesta #4 en: 17 Julio 2011, 15:37:09 »
Hombre, en Nuke bastaria con poner un nodo Premultiply. Si quieres lo puedes sacar premultiplicado de render, aunque me da la impresion de que es lo que quieres evitar.

La razon por la que la gente rendea a veces sin premultiplicar es porque si haces, por ejemplo, una correccion de color sobre un render premultiplicado el color de las zonas semitransparentes (como los bordes) deja de ser correcto.

En mi trabajo lo que hacemos es rendear premultiplicado, luego en compo lo despremultiplicamos, hacemos las correcciones de color que hagan falta y por ultimo lo premultiplicamos de nuevo antes de componerlo sobre otra capa.

Para despremultiplicar un render basta con dividir el color por el alpha. El problema de hacer el despremultiplicado en compo es que si rendeas a 8 bits puede que el color que recuperas no sea demasiado fiable. Nosotros rendeamos en 16 o 32 (dependiendo de la capa), por lo que no tenemos este problema.

Antes de meterte en todo este lio del premultiplicado es importante tener claro que es lo que quieres conseguir con ello, porque me da la impresion (a lo mejor me equivoco) de que no tienes muy claro porque lo estas haciendo, sino que lo has leido en algun lado pero tienes algunas lagunas al respecto.

Tu pregunta lo que haga falta y a ver si conseguimos arrojar un poco de luz sobre el asunto.  ;)

baek

Re: Problema con el premultiply en render
« Respuesta #5 en: 17 Julio 2011, 15:49:28 »
Hombre, en Nuke bastaria con poner un nodo Premultiply. Si quieres lo puedes sacar premultiplicado de render, aunque me da la impresion de que es lo que quieres evitar.

La razon por la que la gente rendea a veces sin premultiplicar es porque si haces, por ejemplo, una correccion de color sobre un render premultiplicado el color de las zonas semitransparentes (como los bordes) deja de ser correcto.

En mi trabajo lo que hacemos es rendear premultiplicado, luego en compo lo despremultiplicamos, hacemos las correcciones de color que hagan falta y por ultimo lo premultiplicamos de nuevo antes de componerlo sobre otra capa.

Para despremultiplicar un render basta con dividir el color por el alpha. El problema de hacer el despremultiplicado en compo es que si rendeas a 8 bits puede que el color que recuperas no sea demasiado fiable. Nosotros rendeamos en 16 o 32 (dependiendo de la capa), por lo que no tenemos este problema.

Antes de meterte en todo este lio del premultiplicado es importante tener claro que es lo que quieres conseguir con ello, porque me da la impresion (a lo mejor me equivoco) de que no tienes muy claro porque lo estas haciendo, sino que lo has leido en algun lado pero tienes algunas lagunas al respecto.

Tu pregunta lo que haga falta y a ver si conseguimos arrojar un poco de luz sobre el asunto.  ;)


Jajaja, gran respuesta White! me ha aclarado bastantes cosas sobre el asunto, si que lo leí en otro post de este foro el tema del premultiply, llevaba tiempo con esta duda porque en muchos de mis renders veia esa linea que rodeaba muchos objetos del render y me extrañaba porque sabia que eso no era lo que queria que saliera, entonces encontre ese post que hizo alanf http://www.xsiforum.com/forum/index.php/topic,4615.0.html que hablaba de este problema que actualmente tengo en cada render que tiro en XSI xDD.

Resumiendo, lo que quiero conseguir basicamente es que cuando lance el render y meta los passes en el FXTree u otro programa para compo es que no me salga esa linea alrededor de las geometrias que salgan en la escena, no se si me he explicado bien o no pero es basicamente eso xd. He probado a tirar 2 renders iguales solo que uno con el premultiply desactivado (en render options) y otro con el premultiply activado (que es como salia en el post de alanf) y en los 2 me siguen apareciendo la dichosa linea jajaja. Es posible que este renderizando a 8 bits y me pase esto como tu dices.

Gracias por la respuesta de todas formas, a ver si consigo ver la solucion con vuestras respuestas :D!
« Última modificación: 17 Julio 2011, 15:54:57 por baek »