|
|
Hi,
Here is a quite simple code:
<<<<<
#include "colors.inc"
#include "glass.inc"
#declare un=1/446;
camera {
location <0, 0, -5*un>
look_at <0, 0, 0>
angle 30
}
light_source { < 1*un,3*un,-4*un>, color White }
light_source { < 1*un,1*un,-4*un>, color White }
blob {
threshold .5
sphere {<0,0,0>,1*un,1}
texture { pigment { color Green } }
sturm on
}
sphere {<0,0,0>,.1*un texture { pigment { color Red } } }
>>>>>
A trivial blob enclose a red sphere that shouldn't be visible.
A variable, "un" modify the scale of the whole scene, so that any
reasonable value of un should return the same output.
For value of un>1/445 that seems to be the case.
For lower values, 1/446 and lower, the blob start rendering a bit odd,
and in fact we start to see the red sphere. Before un=1/1000 the blob is
completely gone, leaving just the red sphere.
1/1000 makes floating values around 10^-3 for the different objects that
should be very reasonable for any scene computation accuracy. So why
does my blob disappear?
Thanks for any help,
Yannick
PS: I came on this while working on some spaceship rendering where large
different scales are at work. I defined:
#declare km= 1;
#declare m= km/1000;
#declare cm= m/100;
#declare mm= m/1000;
#declare um= mm/1000;
On a single scene, it may likely range from a slightly sub-millimeter
scale (details of everyday objects) to some hundreds of millions of km
(planets in solar system), that is around 10^-7 to 10^9 in povray units.
I'm afraid that it wont work for the larger scales, and so that I'll
have to cheat somehow (rescaling planets and putting them closer,
maybe). But I wasn't expecting problems around 10-3.
Post a reply to this message
|
|
|
|
> On a single scene, it may likely range from a slightly sub-millimeter
> scale (details of everyday objects) to some hundreds of millions of km
> (planets in solar system), that is around 10^-7 to 10^9 in povray units.
> I'm afraid that it wont work for the larger scales, and so that I'll
> have to cheat somehow (rescaling planets and putting them closer,
> maybe). But I wasn't expecting problems around 10-3.
You can't mix km with mm in a single scene, at least not without
modifying POV-Ray to use arbitrary-precision floating-point numbers
(probably quite a rewrite, and would really slow things down).
Post a reply to this message
|
|
|
|
Hi,
>> On a single scene, it may likely range from a slightly sub-millimeter
>> scale (details of everyday objects) to some hundreds of millions of km
>> (planets in solar system), that is around 10^-7 to 10^9 in povray units.
> You can't mix km with mm in a single scene, at least not without
> modifying POV-Ray to use arbitrary-precision floating-point numbers
> (probably quite a rewrite, and would really slow things down).
Thanks for this info. You mean that a scale range from 1 to 10^6 is too
much? Seems pretty narrow to me. I'll see!
Thanks,
Yannick
Post a reply to this message
|
|
|
|
>
>> You can't mix km with mm in a single scene, at least not without
>> modifying POV-Ray to use arbitrary-precision floating-point numbers
>> (probably quite a rewrite, and would really slow things down).
>
> Thanks for this info. You mean that a scale range from 1 to 10^6 is too
> much? Seems pretty narrow to me. I'll see!
In many internal calculations of POV-Ray, numbers will get *squared*.
That's reason why there are inaccuracies even with ranges that don't
seem so high.
Post a reply to this message
|
|