POV-Ray : Newsgroups : povray.general : Problems with glass unions Server Time
8 Aug 2024 06:18:38 EDT (-0400)
  Problems with glass unions (Message 1 to 5 of 5)  
From: Jim Gould
Subject: Problems with glass unions
Date: 4 Mar 2001 22:39:14
Message: <3aa30a62$1@news.povray.org>
I have been trying to put many intersecting spheres into a union statement
and then applying a glass texture/interior to them.  The intersecting
spheres always end up being opaque.  Is there some trick to this?

Have been raytracing for about 7 years, but finally own a fast enough
machine to do some cool stuff.  It is really great that this app is still so
popular.


Post a reply to this message

From: Ken
Subject: Re: Problems with glass unions
Date: 4 Mar 2001 22:54:54
Message: <3AA30E4F.9749CBAE@pacbell.net>
Jim Gould wrote:
> 
> I have been trying to put many intersecting spheres into a union statement
> and then applying a glass texture/interior to them.  The intersecting
> spheres always end up being opaque.  Is there some trick to this?

Try using a merge instead. This will get rid of interior surfaces (unless
of course you want them). Also be sure to specify a max_trace_level in
the global settings block i.e.  global_settings { max_trace_level 20 }
The more intersecting surfaces you have the higher you need to raise
this value.

-- 
Ken Tyler - 1400+ POV-Ray, Graphics, 3D Rendering, and Raytracing Links:
http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Jim Gould
Subject: Re: Problems with glass unions
Date: 5 Mar 2001 22:59:27
Message: <3aa4609f$1@news.povray.org>
Thanks,  I figured out the merge thing right after I posted this, but I
wasn't aware of the max_trace_level.  You answered my question and another.
After I switched it to a merge, I discovered that on a Duron 800, this would
still probably take about 2 weeks to render, (about 25000 spheres
differenced against a cylinder.)  I am experimenting with this now.  Hope to
share the results :)
"Ken" <tyl### [at] pacbellnet> wrote in message
news:3AA30E4F.9749CBAE@pacbell.net...
>
>
> Jim Gould wrote:
> >
> > I have been trying to put many intersecting spheres into a union
statement
> > and then applying a glass texture/interior to them.  The intersecting
> > spheres always end up being opaque.  Is there some trick to this?
>
> Try using a merge instead. This will get rid of interior surfaces (unless
> of course you want them). Also be sure to specify a max_trace_level in
> the global settings block i.e.  global_settings { max_trace_level 20 }
> The more intersecting surfaces you have the higher you need to raise
> this value.
>
> --
> Ken Tyler - 1400+ POV-Ray, Graphics, 3D Rendering, and Raytracing Links:
> http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: KalleK
Subject: Re: Problems with glass unions
Date: 6 Mar 2001 10:43:30
Message: <3aa505a2@news.povray.org>
Hi Jim!

> Thanks,  I figured out the merge thing right after I posted this,
but I
> wasn't aware of the max_trace_level.  You answered my question and
another.
> After I switched it to a merge, I discovered that on a Duron 800,
this would
> still probably take about 2 weeks to render, (about 25000 spheres
> differenced against a cylinder.)  I am experimenting with this now.
Hope to
> share the results :)

If there's a system behind the placement of your spheres, than I would
suggest to put them in some unions - maybe 1000 spheres per union. In
some cases this can speed things up.
The slowlyness is caused by the fact that povray has to test again
every single sphere - if it tests again 25 unions and then again 1000
spheres (if there's just one union hit by the ray) there're less tests
to do.
But maybe I'm wrong with the explanation - I don't have the sourcecode
in my mind - nevertheless I once had this speed problem and "solved"
it the way explained above.

cukk


Post a reply to this message

From: Warp
Subject: Re: Problems with glass unions
Date: 7 Mar 2001 06:28:54
Message: <3aa61b76@news.povray.org>
Jim Gould <jim### [at] homecom> wrote:
: I discovered that on a Duron 800, this would
: still probably take about 2 weeks to render, (about 25000 spheres
: differenced against a cylinder.)

  There are several things you can do to speed this up.

  For example, if the entire object was a triangle mesh it would probably
render in some minutes instead of two weeks (well, of course it depends on
reflections and refractions amount, but it would still be a lot faster).
  Figuring out how to (automatically) create a mesh of smooth triangles which
resembles the same object with povray code can be sometimes very difficult,
if not near-to-impossible, but if you can do it, it certainly is worth the
efforts.
  I have done this and it really helps. I had a set of tubes (cylinders and
clipped toruses) forming a complex scene (several millions of cylinders and
toruses). I made two macros which created (open) cylinders and torus
segments with smooth triangles and I recreated the scene with those. The
speed difference was marvelous (a total of more than 30 millions of triangles
rendered in less than 8 minutes at 1024x768 in a P-II 350MHz).

  If you have to use CSG, you may want to see if there's any cheaper way of
achieving the same effect you want. For example sometimes the union of 12
cubes can be faster than 3 cubes differenced from a 4th, the resulting object
being identical.

  With glass objects you may want to experiment with the adc_bailout value.
Setting it larger than the default may speed up the rendering without too
visible artifacts.

-- 
char*i="b[7FK@`3NB6>B:b3O6>:B:b3O6><`3:;8:6f733:>::b?7B>:>^B>C73;S1";
main(_,c,m){for(m=32;c=*i++-49;c&m?puts(""):m)for(_=(
c/4)&7;putchar(m),_--?m:(_=(1<<(c&3))-1,(m^=3)&3););}    /*- Warp -*/


Post a reply to this message

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