|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi,
if I stack a number of transparent objects the area where light has to go
through 3 or more becomes opaque. Is there a logical explanation for this,
or is it a bug?
TIA
Steven
/* code
********************************************************************/
box { < 10, 0, 10 >, < -30, 1, -30 > pigment { SteelBlue transmit 0.95 } }
box { < -10, 10, 10 >, < 30, 11, -30 > pigment { SteelBlue transmit 0.95 }
}
box { < 10, 20, -10 >, < -30, 21, 30 > pigment { SteelBlue transmit 0.95 }
}
camera {
location <-40, 120, -50>
right 1.333 * x
look_at <0, 0, 0 >
angle 50
}
light_source { < -40, -200, -40 > color White }
background{Gray80}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
stevenvh wrote:
> if I stack a number of transparent objects the area where light has to go
> through 3 or more becomes opaque. Is there a logical explanation for this,
> or is it a bug?
global_settings
{
max_trace_level 10
}
Every time a ray is reflected or refracted, new rays need to be shot
which could take long (or forever) to render if there were no limit.
Post a reply to this message
|
|
| |
| |
|
|
From: Christian Froeschlin
Subject: Re: transparent objects appear opaque
Date: 18 Aug 2007 06:13:43
Message: <46c6c657@news.povray.org>
|
|
|
| |
| |
|
|
Christian Froeschlin wrote:
> Every time a ray is reflected or refracted
or when just passing through a transparent surface as in your case.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Christian Froeschlin <chr### [at] chrfrde> wrote:
> > Every time a ray is reflected or refracted
> or when just passing through a transparent surface as in your case.
That's, technically speaking, refraction. The refraction just doesn't
modify the direction of the ray.
(One cool developement idea for povray would be, I think, that if a
surface has transparency, no reflection and no ior, iow. rays just pass
through unmodified (just taking the color of the surface), povray could
skip incrementing the recursion counter. That way you could have and
indefinite amount of transparent surfaces even if max_trace_level is
small.)
--
- Warp
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Warp nous apporta ses lumieres en ce 2007/08/18 06:59:
> Christian Froeschlin <chr### [at] chrfrde> wrote:
>>> Every time a ray is reflected or refracted
>
>> or when just passing through a transparent surface as in your case.
>
> That's, technically speaking, refraction. The refraction just doesn't
> modify the direction of the ray.
>
> (One cool developement idea for povray would be, I think, that if a
> surface has transparency, no reflection and no ior, iow. rays just pass
> through unmodified (just taking the color of the surface), povray could
> skip incrementing the recursion counter. That way you could have and
> indefinite amount of transparent surfaces even if max_trace_level is
> small.)
>
The same thing could be used for only reflective surfaces. The ray could just
bounce.
--
Alain
-------------------------------------------------
EVERYTHING HAS A GENDER
You may not know this but many nonliving things have a gender...
An Hourglass is Female, because over time, the weight shifts to the bottom.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Alain <ele### [at] netscapenet> wrote:
> The same thing could be used for only reflective surfaces. The ray could just
> bounce.
Not, it couldn't. With reflection an infinite loop can happen if the
recursion level is not limited.
--
- Warp
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Warp nous apporta ses lumieres en ce 2007/08/18 08:53:
> Alain <ele### [at] netscapenet> wrote:
>> The same thing could be used for only reflective surfaces. The ray could just
>> bounce.
>
> Not, it couldn't. With reflection an infinite loop can happen if the
> recursion level is not limited.
>
OUPS! Missed that possibility.
--
Alain
-------------------------------------------------
You know you've been raytracing too long when you wonder if ground fog or
athmosphere will look better for your company's market share pie chart.
Christoph Rieder
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Warp" <war### [at] tagpovrayorg> wrote in message news:46c6d0fd@news.povray.org...
> Christian Froeschlin <chr### [at] chrfrde> wrote:
>> > Every time a ray is reflected or refracted
>
>> or when just passing through a transparent surface as in your case.
>
> That's, technically speaking, refraction. The refraction just doesn't
> modify the direction of the ray.
>
> (One cool developement idea for povray would be, I think, that if a
> surface has transparency, no reflection and no ior, iow. rays just pass
> through unmodified (just taking the color of the surface), povray could
> skip incrementing the recursion counter. That way you could have and
> indefinite amount of transparent surfaces even if max_trace_level is
> small.)
although probably a bit more complicated, couldn't this idea be expanded to
objects that do have reflections and/or an ior?
I might be mistaken, but I believe the only way to get in an infinite loop, is
if the ray hits the same object more than once.
So: if a ray is reflected or refracted, the recursion counter doesn't increment
until the same object gets hit again.
there are probably some cases I'm overseeing...
cu!
--
#macro G(b,e)b+(e-b)*C/50#end#macro _(b,e,k,l)#local C=0;#while(C<50)
sphere{G(b,e)+3*z.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1;
#end#end _(y-x,y,x,x+y)_(y,-x-y,x+y,y)_(-x-y,-y,y,y+z)_(-y,y,y+z,x+y)
_(0x+y.5+y/2x)_(0x-y.5+y/2x) // ZK http://www.povplace.com
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>> (One cool developement idea for povray would be, I think, that if a
>> surface has transparency, no reflection and no ior, iow. rays just pass
>> through unmodified (just taking the color of the surface), povray could
>> skip incrementing the recursion counter. That way you could have and
>> indefinite amount of transparent surfaces even if max_trace_level is
>> small.)
My thought would be that after a ray hits the max trace depth it should
ignore transmit, filter and reflection for that hit, and return a pigment
color instead of just returning black. In many cases where there is
multiple semi-transparent, or partially colored reflections, this "guess"
would result in a pixel that (after being shaded by the first hits) would
be somewhat correct. In other cases you'd get multi-color speckling,
but that is just similar to the black speckling we have now.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Tim Attwood nous apporta ses lumieres en ce 2007/08/18 20:18:
>>> (One cool developement idea for povray would be, I think, that if a
>>> surface has transparency, no reflection and no ior, iow. rays just pass
>>> through unmodified (just taking the color of the surface), povray could
>>> skip incrementing the recursion counter. That way you could have and
>>> indefinite amount of transparent surfaces even if max_trace_level is
>>> small.)
>
> My thought would be that after a ray hits the max trace depth it should
> ignore transmit, filter and reflection for that hit, and return a pigment
> color instead of just returning black. In many cases where there is
> multiple semi-transparent, or partially colored reflections, this "guess"
> would result in a pixel that (after being shaded by the first hits) would
> be somewhat correct. In other cases you'd get multi-color speckling,
> but that is just similar to the black speckling we have now.
>
>
That's whey you have adc_bailout. It can be used to limit the depth when the
last surface contribution fals under the threshold.
--
Alain
-------------------------------------------------
99 percent of lawyers give the rest a bad name.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|