POV-Ray : Newsgroups : povray.programming : Re: Blurred transparency demo - blurTransTest.jpg (1/1) : Re: Blurred transparency demo - blurTransTest.jpg (1/1) Server Time
28 Jul 2024 16:31:50 EDT (-0400)
  Re: Blurred transparency demo - blurTransTest.jpg (1/1)  
From: Chris Huff
Date: 27 Jan 2000 20:29:24
Message: <chrishuff_99-B3F5CB.20300427012000@news.povray.org>
In article <slr### [at] rongwmicrocom>, 
ron### [at] povrayorg wrote:

> Okay, this is going to go into serious theoretical-land, so I've xposted
> and set followups to .programming.  
> 
> Ideally, we wouldn't need special code for blurred reflections or for 
> blurred transmission.  What I'd like to do is implement ray differential 
> tracing (http://www-graphics.stanford.edu/papers/trd/) and make it 
> possible 
> to set a flag on _any_ texture that causes it to automatically average 
> a specified number of samples for ray footprints over a specified size.  
> 
> Such a flag would allow you to do blurred reflection or transmission 
> by way of setting a microfacet normal and doing averaged samples for
> even very small footprints.  One advantage would be that you could 
> use normal maps or other existing features to impart a pattern to the 
> frosted texture, or manipulate the microfacets to bias the frosted
> effect to a particular direction.  It'd also make checkered floors do 
> their own AA in the distance without having to do AA on the scene in 
> general.

I have been wondering about how this could be done...unfortunately, my 
math isn't as good as it could be, and is far from sufficient for 
this.(I am still in Algebra II in school, and won't get to Trig or 
Analytic Geometry until next year. And forget about taking Calculus in 
school. Of course, I plan to buy some books before then...)

One thing I have thought of: Modify Trace() (or make a separate 
function) to take one sample, and from the distance of the intersection 
point to the ray start figure out a jitter amount to jitter additional 
samples. Also take into account the distance traveled already. This is 
simple enough even I could do it(or a simple version of it), but I don't 
know how well it would work. Basically a controlled blur that is 
dependant on the distance a ray has travelled.(except the rays are 
jittered on the level before they hit a surface, so things like 
refraction or reflection with normals will be smoothed instead of 
blurred)


> Another nice feature would be a "footprint-size-map" that selects a 
> simpler version of the texture for different footprint sizes, so a 
> checkered plane in the far distance could just blend to medium gray
> which could be sampled faster (but would still look right through 
> a telescope.)

Not sure how this would be done, you would have to figure out how to 
make it depend on the pixels per "feature" of the texture. Maybe by 
checking to see if the intersection points of adjacent samples are below 
a specified distance...

-- 
Chris Huff
e-mail: chr### [at] yahoocom
Web page: http://chrishuff.dhs.org/


Post a reply to this message

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