POV-Ray : Newsgroups : povray.advanced-users : SOR pigmentation : Re: SOR pigmentation Server Time
26 Jun 2024 09:00:43 EDT (-0400)
  Re: SOR pigmentation  
From: Alain
Date: 23 Jul 2011 23:21:04
Message: <4e2b8fa0$1@news.povray.org>

> Alain<aze### [at] qwertyorg>  wrote:

>>
>>> camera {
>>>
>>>       #declare xS = 0;
>>>       #declare yS = 1;
>>>       #declare zS = 0;
>>>       up<xS,yS,zS>
>>>       right x*image_width/image_height
>>>
>>>       angle 1
>>>       location<0,0,-2000>
>>>       look_at (Position - 9*x)
>>> }
>>> .....
>>> light_source {                    // far enough to avoid problems ...
>>>     0
>>>     color White
>>>     translate<20000, 30000, -10000>
>>> }
>>>
>>> For zCam<= -1958.5 or zCam>= 2003.5, all the defects in my scene (where there
>>> are other SORs, affected by the same problem) are gone.
>>>
>>> Gilles
>>>
>>>
>>>
>>>
>>>
>>>
>>
>> You place your camera at a large distance and use a very small angle
>> that effectivelt removes perspective. That, in turn, can cause
>> calculation errors. Those errors will cause the apearance of various
>> artefacts.
>>
>> Try placing your camera closer and use the orthographic projection. It
>> effectively simulate a camera set at infinity.
>>
>>
>> Alain
>
>
> I can imagine that (this is also a reply to Warp) floating point has a limiting
> accuracy, which may be critical when you deal with infinitely thin (right ?)
> surfaces like SOR.
> Of course, without looking at the algorithm, one cannot say more ...
> I am nevertheless slightly amazed by the fact that the defect vanish when you
> move the camera closer or FARTHER from the object ...
>
> Gilles
>
>
>

That's the problem with floating numbers. There are situations where 
they introduce some random noise in the results, while, at other times, 
you get exact results.

If you appen to work with values that can be represented exactly within 
the precision available, all is well. If, at least some values can't be 
represented exactly in binary, then you get rounding errors.
If you use very small values with large ones, or very large with small, 
you get precision and underflow errors in addition to the rounding ones.

You can also notice that the defects will move, change or vanish totaly 
if you rotate your object, or rotate the camera around it, while keeping 
the same distance.

Also, in your case, if you scale the object, the result WILL change.


Alain


Post a reply to this message

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