FG settings
Posted: Thu Mar 13, 2008 12:59 am
I'm having, again, noise in corners that seem to be due to FG settings (the irradience solution is clean). I can send one gazillion FG rays at it and it will improve but I'd rather do this in a more intelligent way. Can someone please explain some of the following settings:
What does prerender do exactly?
Silverlw: Prerender does a bruteforce render with the parameters given like tolerance, minimum/maximum distance between samples and of course how many rays it's allowed to use as maximum. When prerendering 50% is done Kray "knows" the actual data for 50% of the image and tries to interpolate between those samples as god as it can to render a final and hopefully smooth solution. Without any prerender at all there wont be any interpolation between FG samples and end result will be worse than using at least some prerendering. Interpolation is also faster than shooting additional rays.
The way Kray chooses to shoot its samples today is "by the book" as explained by Jensen and others in many other photonapplications but there is probably allot of quality and speed improvements that can be made there if we can achieve some more intelligence to the algorithms.
Ultimately we want FG rays to be shoot where needed and not like now as a matrix pattern. We want FG rays to be shoot in corners,shadows, strong indirect light, and hard to reach places to get nice contact shadows. Now we sometimes have to use quite dense patterns with low maximum distance values everywhere to get the shadows as detailed as we want them.
FG threshold
Silverlw: FG threshold is an adaptive value just to control the noise and tells Kray how many rays it should shoot at samplepoints as a minimum (min rays) and if noise is still larger than FG threshold use up to it's max rays.
B/d
Silverlw: B/d=Brightness density was an early implemented algorithm that tries to take into account if there is large differences between brightness among samples taken and therefore might need more and denser samplepoints at those crucial parts of the image. Unfortunatly it doesnt work that very well and will be totally rewritten in the future to add more intelligence as explained earlier. High B/d values or lower Spatial tolerance gives us almost the same endresult today which wasnt the purpose from the beginning. By enabling "Show samples all" and set prerender to 100% under FG tab it's easy to see how the density of FG samples are affected.
Blur
Silverlw: Blur will smear and blur those FG rays shoot in a similar manner to Lightwaves noisereduction algorithm so final result will look more appealing and with less noise and splotches. Ofcourse accuracy will suffer but it can be way faster. The blur value entered is afaik based on pixels between samplepoints. The larger value the more blur between samples.
Corner Distance
Silverlw: Corner distance is a % value of GI resolution. under FG tab it's easy to see how the corner distance is affected by enabling "Show Samples corners" Corner distance is a way to tell Kray where it should use bruteforce pathtracing. Pathtracing is usefull to avoid lightleaks in corners especially if the room is poorly built with walls without thickness/singlesided polys/low numbers of photons shoot, etc.
Paths
Silverlw: Works together with corner distance.If paths is set to 0 no pathtracing will occur no matter to what corner distance is set to. When set to 1, one bounce pathtracing will occur at those areas that cornerdistance controls. If set to 2, two bounces of pathtracing will occur and so on.
That would help me a lot troubleshooting my scene.
Thanks.
What does prerender do exactly?
Silverlw: Prerender does a bruteforce render with the parameters given like tolerance, minimum/maximum distance between samples and of course how many rays it's allowed to use as maximum. When prerendering 50% is done Kray "knows" the actual data for 50% of the image and tries to interpolate between those samples as god as it can to render a final and hopefully smooth solution. Without any prerender at all there wont be any interpolation between FG samples and end result will be worse than using at least some prerendering. Interpolation is also faster than shooting additional rays.
The way Kray chooses to shoot its samples today is "by the book" as explained by Jensen and others in many other photonapplications but there is probably allot of quality and speed improvements that can be made there if we can achieve some more intelligence to the algorithms.
Ultimately we want FG rays to be shoot where needed and not like now as a matrix pattern. We want FG rays to be shoot in corners,shadows, strong indirect light, and hard to reach places to get nice contact shadows. Now we sometimes have to use quite dense patterns with low maximum distance values everywhere to get the shadows as detailed as we want them.
FG threshold
Silverlw: FG threshold is an adaptive value just to control the noise and tells Kray how many rays it should shoot at samplepoints as a minimum (min rays) and if noise is still larger than FG threshold use up to it's max rays.
B/d
Silverlw: B/d=Brightness density was an early implemented algorithm that tries to take into account if there is large differences between brightness among samples taken and therefore might need more and denser samplepoints at those crucial parts of the image. Unfortunatly it doesnt work that very well and will be totally rewritten in the future to add more intelligence as explained earlier. High B/d values or lower Spatial tolerance gives us almost the same endresult today which wasnt the purpose from the beginning. By enabling "Show samples all" and set prerender to 100% under FG tab it's easy to see how the density of FG samples are affected.
Blur
Silverlw: Blur will smear and blur those FG rays shoot in a similar manner to Lightwaves noisereduction algorithm so final result will look more appealing and with less noise and splotches. Ofcourse accuracy will suffer but it can be way faster. The blur value entered is afaik based on pixels between samplepoints. The larger value the more blur between samples.
Corner Distance
Silverlw: Corner distance is a % value of GI resolution. under FG tab it's easy to see how the corner distance is affected by enabling "Show Samples corners" Corner distance is a way to tell Kray where it should use bruteforce pathtracing. Pathtracing is usefull to avoid lightleaks in corners especially if the room is poorly built with walls without thickness/singlesided polys/low numbers of photons shoot, etc.
Paths
Silverlw: Works together with corner distance.If paths is set to 0 no pathtracing will occur no matter to what corner distance is set to. When set to 1, one bounce pathtracing will occur at those areas that cornerdistance controls. If set to 2, two bounces of pathtracing will occur and so on.
That would help me a lot troubleshooting my scene.
Thanks.