Page 1 of 2

Render Passes? Did they make it?

Posted: Wed Nov 09, 2011 11:26 pm
by nuverian
I remember long ago, that render passes were in the way. Are they implemented yet? They would be way usefull even if few like:

ZDepth
Matte Shadow!!
AO

for starters ;-)

Re: Render Passes? Did they make it?

Posted: Wed Nov 09, 2011 11:39 pm
by convergen
at the moment, the only extra channels provided are alpha channels... I agree, zdepth / ao / diffuse would be awesome, but i believe there is a limitation due to the amount of ram avaliable?

Re: Render Passes? Did they make it?

Posted: Thu Nov 10, 2011 1:48 pm
by vimaxus
Most of the 3d packages allow you to extract z-buffer easy enough. I do it often.

... as for AO, that doesn't exist, at least not in the sense I think you mean. AO is an approximation of the shadow given by the surrounding geometry within a certain limit (a fixed diameter sphere around a point in space), unbiased rendering always takes into account the whole scene for each and every ray and pixel generated, and more important it takes into account all the light interactions of all the materials from a random light path with a certain number of bounces.

The best way is to composit the AO and the rest the 3d package you use already has. Octane (and all the unbiased bunch) is pretty difficult to use to composit layers like that. A little color bleed and some dof sure, but all the render elements mentalray gives for example forget it, on the other hand the result you get from octane is PHYSICALLY ACCURATE so basically any modification pushes it out of that world and thus less real.

The problem comes when you need the compositing when mixing real life footage with the render, in that case it's a cheat and there are plenty of solutions made for that scenario, there is no need for an unbiased render, it's more trouble than it's worth to cheat an environment then to composit in AE

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 3:00 am
by mkirylo
Octane is really great I've been doing some testing at home . I would love to push this for use in production. but there is no way I can make this work in a production pipeline with no break out passes. currently we use vray and we have lots of virtual back ground environments that take hours to render on a pretty large render farm. I would need basic break outs like Dif, spec, refl, refraction, etc in order to even bring this up as a better option for rendering all these virtual environments. Right now with just a bty render with an alpha its not practical to use in production unfortunately. is there an ETA on getting break out passes to work with octane is it something that is still being worked on ?

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 4:13 am
by t_3
mkirylo wrote:Octane is really great I've been doing some testing at home . I would love to push this for use in production. but there is no way I can make this work in a production pipeline with no break out passes. currently we use vray and we have lots of virtual back ground environments that take hours to render on a pretty large render farm. I would need basic break outs like Dif, spec, refl, refraction, etc in order to even bring this up as a better option for rendering all these virtual environments. Right now with just a bty render with an alpha its not practical to use in production unfortunately. is there an ETA on getting break out passes to work with octane is it something that is still being worked on ?
as with the way any unbiased renderer (raytracer) works, you imo just can't have any passes apart from alpha and depth. "fake" renderers generate shadow/diffuse/reflection/etc. passes "by nature" - an unbiased renderer just fires a ray into space ;) and looks what happens, e.g. what the resulting color is. no passes & no way to calculate them; at least no efficient way i can think of; maybe the direct lighting mode could provide such passes, i don't know. but where octane really shines (in the truest sense of the word) is pt/pmc...

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 2:30 pm
by Proupin
Expect passes as a 1.x feature... besides being vram taxing, I can't think of a reason why reflection and even object id's couldn't be sampled really...

vimaxus, AO is already available, with the clay mode thing you virtually have an AO pass... unbiased has no relation to the physical accuracy, but the progressive rendering method, where more time->more samples->more quality, ad infinitum. In that sense, directlighting is also unbiased as it doesn't have bias errors, and it gets sampled by the same progressive method as PT or PMC.

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 3:12 pm
by t_3
Proupin wrote:Expect passes as a 1.x feature... besides being vram taxing, I can't think of a reason why reflection and even object id's couldn't be sampled really...

vimaxus, AO is already available, with the clay mode thing you virtually have an AO pass... unbiased has no relation to the physical accuracy, but the progressive rendering method, where more time->more samples->more quality, ad infinitum. In that sense, directlighting is also unbiased as it doesn't have bias errors, and it gets sampled by the same progressive method as PT or PMC.
for the final 1.x release afaik only depth was announced. "unbiased" does'nt mean progressive rendering, but a totally different way to calculate the color of a pixel (raytracing vs. everything else a biased renderer uses to create the ouput); progressive rendering is just the way to get this done.

clay mode just means that all materials are set to diffuse with stripped colors - thus the indirect/refractive lighting behaves totally different from what you have, if the same materials were glossy or specular. maybe a dev can prove me wrong, but with only raytracing you can't have passes for shadows, refractions, reflections, etc.

i.e. if you want to have a shadow "pass", you need to calculate the image n-times, because you need to hide any object, that may drop a shadow on another object, and need to repeat this for every object, just to get all objects not shaded - now, how could this be efficiently done?

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 3:48 pm
by Proupin
in clay mode you can adjust the AO distance, you are basically looking to an AO render... right?

From what i understand, progressive rendering is what pretty much makes it unbiased; Vray RT is unbiased just because of it. As samples approach infinity error approaches 0. Do two biased rendering and they will look different (same amount of samples in different places). Do two unbiased renders and they will look exactly the same (except for noise variance).

To do different passes would be like doing a render inside a render, meaning more information besides resulting color should be buffered. I guess it would be slower and consume more Vram.

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 5:13 pm
by t_3
Proupin wrote:in clay mode you can adjust the AO distance, you are basically looking to an AO render... right?

From what i understand, progressive rendering is what pretty much makes it unbiased; Vray RT is unbiased just because of it. As samples approach infinity error approaches 0. Do two biased rendering and they will look different (same amount of samples in different places). Do two unbiased renders and they will look exactly the same (except for noise variance).

To do different passes would be like doing a render inside a render, meaning more information besides resulting color should be buffered. I guess it would be slower and consume more Vram.
the clay mode uses whatever render kernel you have selected. if you use pmc + clay, there is no such thing like ao distance.

and no, sorry, but progressive rendering is not the meaning of unbiased rendering - it is just the way the renderer needs to work; raytracers/pathtracers imo won't render images in tiles, because they need to "see" the image at a whole anyway.

biased means, the renderer calculates shadow maps, ao passes, inderect light passes, radiosity passes, traditional shading, etc. and combines all that to a final image; as all this is just some sort of assuming and needs specific material setups to "fake" real materials, so it is called "biased".

unbiased means, the renderer has a physically correct model of the surface (thus needs a lot less & different parameters) and follows a randomly shot ray until it reaches a light source (or infinity ;) and all reflections/refractions along the way, defined by the (physical) attributes of the materials causing the reflections/refractions, affect the final color of the point where the ray started. and there are no passes :)

as i wrote earlier, there could be passes with the direct lighting kernel, maybe, but not for dl/pmc. by the way vray rt is just gpu accelerated, but it is no unbiased renderer; indigo or luxrender (other unbiased renders) also don't provide passes, because of the same reasons. last but not least maxwell (unbiased) uses a gi algorithm instead of pathtracing, and thus can provide such passes...

Re: Render Passes? Did they make it?

Posted: Mon Nov 14, 2011 11:18 pm
by Proupin
"Vray RT is unbiased so it will not use any of the render engines available such as irradiance map or light cache, if these are set, Vray RT will simply ignore them." source. They're probably lying though... and it's not only GPU accelerated, you can actually choose CPU as well, haven't you heard? :D

Maxwell is based on MLT, not some generic "gi algorithm" (source), and it's the same method used by Kerkythea, Indigo and LuxRender. Maxwell has passes, then the others could have them too... I'm guessing GPU/Cuda/Vram limitations make this hard or something. Maybe RS can somehow specify what they think will be supported in the future regarding passes...

I agree progressive rendering is just 'the way' unbiased rendering methods get to their respective solutions, it is not the reason, but they all share a progressive render nonetheless in orther to be interpolation (bias) free. That's why imo directlighting rendered this way is unbiased. there are just no bias errors to be found.

There is this question in the fryrender faq: fryrender is an unbiased render engine. What does that mean? too long to paste here, it states that with unbiased methods there are no artifacts caused by interpolation of light samples, like the ones irradiance maps (biased) produce. There is also a similar explanation in wikipedia, and there is a link to a small article which is pretty clarifying... no trace of 'randomly shot rays' or other properties you seem to give to the unbiased concept... do you have any sources for what you're stating? glad to learn from you guys.