POV-Ray : Newsgroups : povray.general : Reflections Server Time
7 Aug 2024 15:17:00 EDT (-0400)
  Reflections (Message 1 to 10 of 27)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Timothy R  Cook
Subject: Reflections
Date: 22 Oct 2001 12:48:30
Message: <3BD44DBD.341057D@scifi-fantasy.com>
So now that we've got blurring reflections licked, how do we fade
out reflections?  Maybe media?  (Which I still haven't figured out
how to make work the way I want it to...)

-- 
Tim Cook
http://empyrean.scifi-fantasy.com

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GFA dpu- s: a?-- C++(++++) U P? L E--- W++(+++)>$
N++ o? K- w(+) O? M-(--) V? PS+(+++) PE(--) Y(--)
PGP-(--) t* 5++>+++++ X+ R* tv+ b++(+++) DI
D++(---) G(++) e*>++ h+ !r--- !y--
------END GEEK CODE BLOCK------


Post a reply to this message

From: Ron Parker
Subject: Re: Reflections
Date: 22 Oct 2001 13:29:04
Message: <slrn9t8lr1.su9.ron.parker@fwi.com>
On Mon, 22 Oct 2001 12:47:57 -0400, Timothy R. Cook wrote:
> So now that we've got blurring reflections licked, how do we fade
> out reflections?  Maybe media?  (Which I still haven't figured out
> how to make work the way I want it to...)

Try this.  It's not perfect, and I'm sure others will improve on it, but
it demonstrates the idea.  (3.5 only, I'm afraid, due to the no_image)
Unfortunately, this may be due to an undocumented and perhaps incorrect
behavior of no_image...

Notice that if you comment out or remove the line that says "reflective 
sphere location" the reflective sphere ceases to have faded reflections; 
this is the part that might be considered a bug.

difference {
  box {-100 100}
  sphere {x-2*z .001} //camera location
  sphere {10*z+x 5.001} // reflective sphere location
  
  hollow 
  pigment {color rgbt 1}
  interior {
    media {
      absorption .3
      density {rgb 1}
    }
  }  
  no_image
} 
 
sphere {10*z+x 5
  pigment {color red 1}
  finish {reflection .9 ambient 0 diffuse .5 specular 0}
}

light_source {<-20,20,-20> rgb 1 shadowless}
 
camera {
  location x-2*z 
  look_at 0
}

#declare I=0;
#while (I<5)     
  cylinder {I*z-y I*z+y .05 pigment {color green 1} finish {ambient 1}}
  #declare I=I+1;
#end



-- 
plane{-z,-3normal{crackle scale.2#local a=5;#while(a)warp{repeat x flip x}rotate
z*60#local a=a-1;#end translate-9*x}pigment{rgb 1}}light_source{-9red 1rotate 60
*z}light_source{-9rgb y rotate-z*60}light_source{9-z*18rgb z}text{ttf"arial.ttf"
"RP".01,0translate-<.6,.4,.02>pigment{bozo}}light_source{-z*3rgb-.2}//Ron Parker


Post a reply to this message

From: Trevor Quayle
Subject: Re: Reflections
Date: 22 Oct 2001 13:29:21
Message: <3bd45771$1@news.povray.org>
What about fresnel reflection?

-tgq


"Timothy R. Cook" <tim### [at] scifi-fantasycom> wrote in message
news:3BD### [at] scifi-fantasycom...
> So now that we've got blurring reflections licked, how do we fade
> out reflections?  Maybe media?  (Which I still haven't figured out
> how to make work the way I want it to...)
>
> --
> Tim Cook
> http://empyrean.scifi-fantasy.com
>
> -----BEGIN GEEK CODE BLOCK-----
> Version: 3.12
> GFA dpu- s: a?-- C++(++++) U P? L E--- W++(+++)>$
> N++ o? K- w(+) O? M-(--) V? PS+(+++) PE(--) Y(--)
> PGP-(--) t* 5++>+++++ X+ R* tv+ b++(+++) DI
> D++(---) G(++) e*>++ h+ !r--- !y--
> ------END GEEK CODE BLOCK------


Post a reply to this message

From: Kari Kivisalo
Subject: Re: Reflections
Date: 22 Oct 2001 13:59:44
Message: <3BD45E99.43B284DB@engineer.com>
"Timothy R. Cook" wrote:
> 
> So now that we've got blurring reflections licked, how do we fade
> out reflections?

What physical property of materials and light would this model?

_____________
Kari Kivisalo


Post a reply to this message

From: Trevor Quayle
Subject: Re: Reflections
Date: 22 Oct 2001 14:36:09
Message: <3bd46719$1@news.povray.org>
I think I understand what you mean here now, that as objects get further
away from the reflecting object, they fade in brightness as opposed to
blurring out of visibilty, aka light attenuation.  POV does have light
attenuation, but it is only applied to direct illumination and not diffuse
or reflected light, but this problem exists in looking directly at as well
as reflections. i.e., when using light attenuation,  as an object gets
further from a light source, it is illuminated less because the direct
lighting gets faded, but as an equally illuminated object gets further from
the camera, it does not fade (which in reality, it should if direct light
gets attenuated, then so should indirect, but POV light attenuation doesn't
work that way). As Ron shows, one way to simulate this is with absorbing
media.  As a quicker method, you could use constant fog with a black
pigment, as the features of media aren't really required here. Adding this
to your scene (make sure your camera is not in a solid object, that includes
inverted planes!)

fog {
  fog_type 1
  distance 10
  color rgb 0
}


You will need to play with the distance value to get what you need.

Note that sky_sphere and backgroud won't work with these, as they are an
infinite distance away and will get faded to black, use a large hollow
sphere with a high ambient finish to replace sky_sphere.

-tgq


Post a reply to this message

From: Ron Parker
Subject: Re: Reflections
Date: 22 Oct 2001 15:12:49
Message: <slrn9t8rtj.t07.ron.parker@fwi.com>
On Mon, 22 Oct 2001 20:59:53 +0300, Kari Kivisalo wrote:
> "Timothy R. Cook" wrote:
>> 
>> So now that we've got blurring reflections licked, how do we fade
>> out reflections?
> 
> What physical property of materials and light would this model?

It's supposed to resemble a poor man's reflection blur.

-- 
#local R=rgb 99;#local P=R-R;#local F=pigment{gradient x}box{0,1pigment{gradient
y pigment_map{[.5F pigment_map{[.3R][.3F color_map{[.15red 99][.15P]}rotate z*45
translate x]}]#local H=pigment{gradient y color_map{[.5P][.5R]}scale 1/3}[.5F
pigment_map{[.3R][.3H][.7H][.7R]}]}}}camera{location.5-3*z}//only my opinions


Post a reply to this message

From: Lutz-Peter Hooge
Subject: Re: Reflections
Date: 22 Oct 2001 15:20:01
Message: <MPG.163e90604388b3f69896a4@news.povray.org>
In article <3bd46719$1@news.povray.org>, Tin### [at] hotmailcom 
says...
> lighting gets faded, but as an equally illuminated object gets further from
> the camera, it does not fade (which in reality, it should if direct light
> gets attenuated, then so should indirect,

No, this is not true. Just look at the Moon. It has roughly the same 
brightness as a landscape in daylight has.
The reason objects further away from a lightsource are less illuminated 
then those near it, is NOT that the brightness of the lightsource 
decreases over distance (this is only possible if there really is some 
absorbing media in between), but because the area (in degrees^2) it 
occupies when viewed from the object is smaller.

The light attenuation in Pov is only necessary because raytraced 
lightsources are infinitly small.

Lutz-Peter


Post a reply to this message

From: Trevor Quayle
Subject: Re: Reflections
Date: 22 Oct 2001 15:22:35
Message: <3bd471fb$1@news.povray.org>
To follow up on this I posted two images in p.b.i showing how it would work.
In one image I used standard light attenuation, and in the second I have
added a black fog with the distance set the same as the attenuation distance
of the light sources, note that the light sources have a white sphere with a
high ambient value applied to them, so they do not fade as much as the red
spheres.

-tgq


Post a reply to this message

From: Ron Parker
Subject: Re: Reflections
Date: 22 Oct 2001 16:23:35
Message: <slrn9t9029.t1k.ron.parker@fwi.com>
On Mon, 22 Oct 2001 14:35:57 -0400, Trevor Quayle wrote:
> work that way). As Ron shows, one way to simulate this is with absorbing
> media.  As a quicker method, you could use constant fog with a black
> pigment, as the features of media aren't really required here. Adding this

You have greatly misunderstood the point of my demonstration.

That absorbing media is funny.  Notice how it doesn't do anything to the
first five green cylinders, but the other five (the reflections of the 
first five in the surface of the sphere) fade out?  There's something special
going on there that you can't do with fog.  

For more fun, try adding another reflective sphere to the scene somewhere and
notice how it doesn't behave the same as the one that's there now.  So 
there's something about that absorbing media that's not only strange from 
the camera's point of view, but also from that one sphere's point of view.

The answer, of course, lies in the two spheres that are differenced out of
the media, and in the no_image keyword.  It's hard to state the exact rules
that dictate when the media appears and when it doesn't, but I'll give it
a shot:

- a camera ray that originates inside the media container is affected.  This
  might very well be a bug, depending on whether you believe that the no_image
  keyword should affect the media in the interior of the object.  Luckily,
  even if this bug is fixed it won't matter for this technique.

- a camera ray that originates outside the media container is not affected,
  because its intersections with the media container are ignored due to the
  no_image.

- When the camera is outside the media container, a reflected ray that 
  originates inside the media container is not affected.  This is because 
  we only add the media to the list of things to consider when the ray 
  enters the media container, which doesn't happen in this case unless 
  the ray happens to intersect a "bubble" in the container.  This fact 
  is probably also a bug.  If it's fixed, it will limit the technique
  considerably (requiring all reflective objects in your scene to fade, 
  and requiring them all to fade to the same color.)  It probably should
  be fixed, but fixing it seems like it would cause a performance hit,
  and it's not as though it's really a real-world feature anyway.  The
  part about the "bubbles" has some effect on what sort of objects and
  scene geometry you can use, but not too much. 

- When a reflected ray originates outside the media container, it is 
  always affected by the media.  This is the only part that really makes
  sense about the whole thing. :)

--
#macro R(L P)sphere{L __}cylinder{L P __}#end#macro P(_1)union{R(z+_ z)R(-z _-z)
R(_-z*3_+z)torus{1__ clipped_by{plane{_ 0}}}translate z+_1}#end#macro S(_)9-(_1-
_)*(_1-_)#end#macro Z(_1 _ __)union{P(_)P(-_)R(y-z-1_)translate.1*_1-y*8pigment{
rgb<S(7)S(5)S(3)>}}#if(_1)Z(_1-__,_,__)#end#end Z(10x*-2,.2)camera{rotate x*90}


Post a reply to this message

From: Ron Parker
Subject: Re: Reflections
Date: 22 Oct 2001 16:27:08
Message: <slrn9t908t.t1k.ron.parker@fwi.com>
On 22 Oct 2001 16:23:35 -0400, Ron Parker wrote:
> On Mon, 22 Oct 2001 14:35:57 -0400, Trevor Quayle wrote:
>> work that way). As Ron shows, one way to simulate this is with absorbing
>> media.  As a quicker method, you could use constant fog with a black
>> pigment, as the features of media aren't really required here. Adding this
> 
> You have greatly misunderstood the point of my demonstration.
> 
> That absorbing media is funny.  Notice how it doesn't do anything to the
> first five green cylinders, but the other five (the reflections of the 
> first five in the surface of the sphere) fade out?  There's something special
> going on there that you can't do with fog.  

Oh, and just for fun, try adding a sky_sphere.  One that's not black.  I'll
wait here while you try that...

sky_sphere {pigment {color blue 1}}

So, uh... shouldn't the background still be black, or at least darker than
blue 1?  There really is something funny going on here.

--
#macro R(L P)sphere{L __}cylinder{L P __}#end#macro P(_1)union{R(z+_ z)R(-z _-z)
R(_-z*3_+z)torus{1__ clipped_by{plane{_ 0}}}translate z+_1}#end#macro S(_)9-(_1-
_)*(_1-_)#end#macro Z(_1 _ __)union{P(_)P(-_)R(y-z-1_)translate.1*_1-y*8pigment{
rgb<S(7)S(5)S(3)>}}#if(_1)Z(_1-__,_,__)#end#end Z(10x*-2,.2)camera{rotate x*90}


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

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