POV-Ray : Newsgroups : povray.general : Blob problem Server Time
5 Nov 2024 09:22:04 EST (-0500)
  Blob problem (Message 1 to 5 of 5)  
From: Olivier Leonard
Subject: Blob problem
Date: 2 Jun 2003 04:10:01
Message: <web.3edb06061cc76cc0cd0ca0@news.povray.org>
Hello, this is my first post here

I'm currently working with blobs and i've got a problem :

I've got a blob with 6 spheres inside.
When the radius of the spheres isn't too high, i get a nice effect :
<a href=http://yeeeeh.free.fr/POV/Picture500.jpg> Picture 1 </a>

But when the radius exceed a certain value, the blob starts to tear
appart...
<a href=http://yeeeeh.free.fr/POV/Picture700.jpg> Picture 2 </a>

Does someone know about a way for this not to happen ?



Post a reply to this message

From: Tim Nikias v2 0
Subject: Re: Blob problem
Date: 2 Jun 2003 06:51:01
Message: <3edb2c15@news.povray.org>
That's floating point precision, not a bug,
but a well-known issue. Same thing happens
to bicubic-patches (though I think with those
it only happens when they are too small) and
if I'm not mistaken some other objects which
make heavy use of floating point operations.

Just scale the objects to a working size, which
is the only functioning workaround I know of.

Regards,
Tim

PS: First posts are normally coupled with the
obligatory "reflective Sphere on checkered Plane"
image in povray.binaries.images, which will then
be replied with a bunch of "Welcomes" from
fellow POVers... :-)

-- 
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmxde

> Hello, this is my first post here
>
> I'm currently working with blobs and i've got a problem :
>
> I've got a blob with 6 spheres inside.
> When the radius of the spheres isn't too high, i get a nice effect :
> <a href=http://yeeeeh.free.fr/POV/Picture500.jpg> Picture 1 </a>
>
> But when the radius exceed a certain value, the blob starts to tear
> appart...
> <a href=http://yeeeeh.free.fr/POV/Picture700.jpg> Picture 2 </a>
>
> Does someone know about a way for this not to happen ?
>

>


Post a reply to this message

From: Olivier Leonard
Subject: Re: Blob problem
Date: 2 Jun 2003 08:35:01
Message: <web.3edb43b27f76224fcd0ca0@news.povray.org>
Tim Nikias v2.0 wrote:
>That's floating point precision, not a bug,
>but a well-known issue. Same thing happens
>to bicubic-patches (though I think with those
>it only happens when they are too small) and
>if I'm not mistaken some other objects which
>make heavy use of floating point operations.
>
>Just scale the objects to a working size, which
>is the only functioning workaround I know of.
>
>Regards,
>Tim

Uh, ok, but could you tell me precisely where to put the scale on a blob
object, because that example doesn't work fine :)


blob { threshold 0.1
 sphere { < 1001.000000 , 301.000000 , -1.000000 > , 50.100000 , 1.0
  texture { pigment { rgbft < 1.000000, 0.050000, 0.000000, 0.5, 0.1 > } }
finish { phong 1 } }
 sphere { < 1173.000000 , 101.000000 , -101.000000 > , 0.100000 , 1.0
  texture { pigment { rgbft < 0.990000, 0.000000, 1.000000, 0.5, 0.1 > } }
finish { phong 1 } }
 sphere { < 1173.000000 , 1.000000 , -1.000000 > , 49.900000 , 1.0
  texture { pigment { rgbft < 1.000000, 0.010000, 0.000000, 0.5, 0.1 > } }
finish { phong 1 } }
 sphere { < 1001.000000 , 101.000000 , -1.000000 > , 50.000000 , 1.0
  texture { pigment { rgbft < 1.000000, 0.060000, 0.000000, 0.5, 0.1 > } }
finish { phong 1 } }
 sphere { < 1345.000000 , 101.000000 , -1.000000 > , 49.800000 , 1.0
  texture { pigment { rgbft < 1.000000, 0.020000, 0.000000, 0.5, 0.1 > } }
finish { phong 1 } }
 sphere { < 1173.000000 , 401.000000 , -1.000000 > , 49.600000 , 1.0
  texture { pigment { rgbft < 1.000000, 0.040000, 0.000000, 0.5, 0.1 > } }
finish { phong 1 } }
 sphere { < 1345.000000 , 301.000000 , -1.000000 > , 49.700000 , 1.0
  texture { pigment { rgbft < 1.000000, 0.030000, 0.000000, 0.5, 0.1 > } }
finish { phong 1 } }
        scale 10
}


Post a reply to this message

From: Tim Nikias v2 0
Subject: Re: Blob problem
Date: 2 Jun 2003 08:45:05
Message: <3edb46d1$1@news.povray.org>
First of all, when you want someone to look at your
scene, you need to supply a working scene, with
a camera, at least one light-source and then
the object.

Then, your "scale 10" at the end can be changed easily
to something like scale .1 or such.

Finally, your blob is positioned awkwardly (why would
something be placed in the region of <1300,100,-1>?).

Most of the time, it is best to model an object on the
origin (<0,0,0>) and then position it later using translate.

Hope this gets you going... :-)

-- 
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmxde

> Tim Nikias v2.0 wrote:
> >That's floating point precision, not a bug,
> >but a well-known issue. Same thing happens
> >to bicubic-patches (though I think with those
> >it only happens when they are too small) and
> >if I'm not mistaken some other objects which
> >make heavy use of floating point operations.
> >
> >Just scale the objects to a working size, which
> >is the only functioning workaround I know of.
> >
> >Regards,
> >Tim
>
> Uh, ok, but could you tell me precisely where to put the scale on a blob
> object, because that example doesn't work fine :)
>
>
> blob { threshold 0.1
>  sphere { < 1001.000000 , 301.000000 , -1.000000 > , 50.100000 , 1.0
>   texture { pigment { rgbft < 1.000000, 0.050000, 0.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>  sphere { < 1173.000000 , 101.000000 , -101.000000 > , 0.100000 , 1.0
>   texture { pigment { rgbft < 0.990000, 0.000000, 1.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>  sphere { < 1173.000000 , 1.000000 , -1.000000 > , 49.900000 , 1.0
>   texture { pigment { rgbft < 1.000000, 0.010000, 0.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>  sphere { < 1001.000000 , 101.000000 , -1.000000 > , 50.000000 , 1.0
>   texture { pigment { rgbft < 1.000000, 0.060000, 0.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>  sphere { < 1345.000000 , 101.000000 , -1.000000 > , 49.800000 , 1.0
>   texture { pigment { rgbft < 1.000000, 0.020000, 0.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>  sphere { < 1173.000000 , 401.000000 , -1.000000 > , 49.600000 , 1.0
>   texture { pigment { rgbft < 1.000000, 0.040000, 0.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>  sphere { < 1345.000000 , 301.000000 , -1.000000 > , 49.700000 , 1.0
>   texture { pigment { rgbft < 1.000000, 0.030000, 0.000000, 0.5, 0.1 > } }
> finish { phong 1 } }
>         scale 10
> }
>


Post a reply to this message

From: Olivier Leonard
Subject: Re: Blob problem
Date: 2 Jun 2003 09:15:01
Message: <web.3edb4d947f76224fcd0ca0@news.povray.org>
Sorry about the strange coordinates, but this POV code is generated by a
program i'm working on in openGL. The POV output is to make the result
nicer (and the openGL for performances).

I tried dividing every value in my scene by 10 (including radius) and it
seems to eliminate the problem, so thanks for the advice :)

More tests to come...


Post a reply to this message

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