POV-Ray : Newsgroups : povray.beta-test : max trace level / ADC bailout "blackout" : Re: max trace level / ADC bailout "blackout" Server Time
28 Jul 2024 12:21:51 EDT (-0400)
  Re: max trace level / ADC bailout "blackout"  
From: Alain
Date: 28 Jan 2009 21:33:23
Message: <49811573$1@news.povray.org>
clipka nous illumina en ce 2009-01-26 22:28 -->
> I'm just brooding over the issue of max trace level and ADC bailout.
> 
> If I'm not mistaken, at the moment this is handled such that a ray that is
> either "too deep" or is unlikely to make much of a difference is truncated to
> black. Which is not ideal, especially when dealing with low max trace level and
> high bailout values (or low weights), as it happens during radiosity sample
> gathering.
> 
> I have a few ideas that could help improve the results in such cases:
> 
> (A)
> 
> Have the user specify a "cutoff color", to be used instead of the current
> default black when a ray exceeds the max trace level or ADC bailout limit; this
> way, the color can be adapted to the scene, e.g. for a scene dominated by a
> bright blue sky the user could choose a rather bright, blueish color.
> 
> (B)
> 
> Stick to the black, but automatically "boost" each pixel that has suffered
> "cutoff" according to the "lost weight"; e.g. if during tracing for a pixel one
> ray is "cut off" that would have contributed an estimated 10% of color to the
> pixel, and another that would have contributed 5%, multiply the resulting pixel
> color by 1/0.85. (Alternatively, such a correction could be applied at each
> "fork" where a ray is cut off; however, it would then be unable to catch cases
> where multiple "forked" rays are cut off.)
> 
> This may still be wrong, but hopefully not as wrong as the current "blackout".
> 
> (C)
> 
> Borrow some approach from path tracing: If at a "fork" both rays would drop
> below the bailout threshold, but together they would still be above it, roll a
> dice and trace one of them.
> 
> 
> 
If you go to deep and max_trace kicks in, the color returned is black.

If the contribution goes under the adc_bailout value, you don't return black but 
the calculated color so far. Bailout never return black, unless it have only 
sampled black.

Thus, you ONLY get black if, and only if, max_trace_level kicks in before 
adc_bailout.

So, if you get black spots, you can increase max_trace_level, OR increase 
adc_bailout, OR both.

-- 
Alain
-------------------------------------------------
  "Having a smoking area in a restaurant is like having a peeing area in a pool."
   --Thomas Pfeffer, American Heart Association


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.