[Plib-users] Re: hotspots :-)
Brought to you by:
sjbaker
From: Steve B. <sjb...@ai...> - 2001-02-18 22:58:06
|
Ran...@ma... wrote: > > You can either read all this stuff I've written below, or look at the > following page (or both): > > http://geography.bu.edu/brdf/brdfexpl.html I know a *lot* about BRDF - that's what we try to implement using Ambient/Diffuse/Specular/Emission on an OpenGL polygon - in the real world, the way that light is scattered (both by smooth surfaces - and surfaces with 'microtexture' like grass - or trees (if you are far enough away). I looked very hard at the photo's in that page - and I simply don't see the "hotspot" he's talking about... However, I think I understand what you are talking about (finally!)... > The easiest way to picture it in your mind is related to > the phrase "The Sun sees no shadows." So, let me get this straight. What I *think* you are saying is that when the surface on the ground has a sufficiently rough 'microtexture' such that it self-shadows, there will be a place from which you can view that surface where all the shadows are occluded by the micro-geometry that is casting those shadows. One such position is at the point where the light source is being cast from...the sun which "sees no shadows". (More or less - it sees shadows cast by other light sources of course). So, if you are in a plane - looking down at the ground, your line of sight to the microtexture will see those teeny-tiny shadows everywhere *except* in the one special direction - at that point, you are in a direct line between the ground and the sun - so you see no shadows at all. As you look off to the side of that spot, you gradually see more and more shadow - so the ground is brightest when your eye is in line with the sun. COINCIDENTALLY - that is the *EXACT* spot where your shadow will fall...but that's only a coincidence - all your earlier discussions were throwing me off by saying it was due to some refractive or angle of incidence effect. So - this 'halo' or 'hotspot' isn't really related to the shadow, it's a completely separate artifact. Someone else - half a mile away - won't see any hotspot around *your* shadow - they'll only see it around their own shadow. In practical (OpenGL) terms...the hotspot occours when the angle between the eye, the lightsource and the surface is nearly zero. That's sortof like specular reflectance - except the surface normal of the polygon is not involved. I guess the simplest way to simulate that is to have a second GL light source at the same location as the eye - but with a narrow beam width - and pointing always away from the Sun. You'd also only want this effect on very rough surfaces...the effect would be invisible on smooth things like water. That might not have an especially great physical resemblance to the real thing - but it should do something that's "good enough". -- Steve Baker HomeEmail: <sjb...@ai...> WorkEmail: <sj...@li...> HomePage : http://web2.airmail.net/sjbaker1 Projects : http://plib.sourceforge.net http://tuxaqfh.sourceforge.net http://tuxkart.sourceforge.net http://prettypoly.sourceforge.net http://freeglut.sourceforge.net |