POV-Ray : Newsgroups : povray.programming : Fuzzy Reflections and frosted glass. Server Time
29 Jul 2024 02:35:19 EDT (-0400)
  Fuzzy Reflections and frosted glass. (Message 1 to 2 of 2)  
From: Steve
Subject: Fuzzy Reflections and frosted glass.
Date: 26 Jan 1999 18:25:14
Message: <36ae4c11.240345233@news.povray.org>
Fuzzy reflections can be acheived in the following way:

For a reflective object, define two new parameters called "blur" and another
called "samples."  Blur's default is 0.0, with a maximum of 1.0.  Samples
should be an integer number, with a default around 5 or so.
When casting a reflected ray, instead of casting one ray cast "samples" number
of rays and average their color values.  'Blur' should translate into an angle
of deviation of the extra rays from the absolute reflected path..  Where 0.0
means no deviation and 1.0 means the angles can deviate anywhere over the 180
degrees of the hemisphere surrounding the surface normal at the point of
intersection.  In order to avoid smearing and noise, a single ray should be
cast in the absolute reflected direction, and this ray's value should way more
heavily on the average than the other sample rays cast out.

Frosted glass is glass that refracts objects seen through them but in a
fuzzier way.   Use the above method.  But use the refracted direction instead
of the reflected direction and the anti-surface normal instead of the surface
normal.  Also...changes in IOR between mediums are not necesarily needed for
this to work. The results would look like transparent plastic or lampshades.

----------
Steve Horn


Post a reply to this message

From: Nathan Kopp
Subject: Re: Fuzzy Reflections and frosted glass.
Date: 27 Jan 1999 00:52:56
Message: <36AEAA36.E2343237@Kopp.com>
This technique is known as 'monte-carlo ray-tracing' (used to be called
distributed ray-tracing) because of the randomness involved.

Somebody did implement a blury-reflections patch for POV.  You can find it
at the PatchStation... and I think it's part of the SuperPatch.
http://twysted.net/patchstation/

Blury refractions have not yet been implemented (afaik), but it would be
easy to extend the current patch to do this as you describe.

One thing:  most monte-carlo ray-tracers get information from an object's
BRDF to determine the amount of blur desired.  The BRDF (bi-directional
reflectance distribution function... or something like that) for POV is
made up of a combination of the diffuse, phong, specular, and reflect
components of the finish (along with the pigment).

For POV, though, I don't think it's necessary to use the BRDF to
determine the blur amount... a user-specifiable amount like you describe
would probably be adequate.

-Nathan

Steve wrote:
> 
> Fuzzy reflections can be acheived in the following way:
> 
> For a reflective object, define two new parameters called "blur" and another
> called "samples."  Blur's default is 0.0, with a maximum of 1.0.  Samples
> should be an integer number, with a default around 5 or so.
> When casting a reflected ray, instead of casting one ray cast "samples" number
> of rays and average their color values.  'Blur' should translate into an angle
> of deviation of the extra rays from the absolute reflected path..  Where 0.0
> means no deviation and 1.0 means the angles can deviate anywhere over the 180
> degrees of the hemisphere surrounding the surface normal at the point of
> intersection.  In order to avoid smearing and noise, a single ray should be
> cast in the absolute reflected direction, and this ray's value should way more
> heavily on the average than the other sample rays cast out.
> 
> Frosted glass is glass that refracts objects seen through them but in a
> fuzzier way.   Use the above method.  But use the refracted direction instead
> of the reflected direction and the anti-surface normal instead of the surface
> normal.  Also...changes in IOR between mediums are not necesarily needed for
> this to work. The results would look like transparent plastic or lampshades.
> 
> ----------
> Steve Horn


Post a reply to this message

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