[Radiance-general] Re: Radiance animation questions

Greg Ward [email protected]
Wed, 17 Dec 2003 08:32:07 -0800


There's no way to get a solid angle associated with a sample in rtrace, 
because there is no image plane.  That's what Peter was saying.  A 
value of zero would have to be given, which would have to be treated 
specially by the handling .cal file.

Except for perspective view rays, we'd probably always be giving a 
solid angle of zero.  The vast majority of rays in a rendering are 
secondary rays, which have reflected one or more time from various 
surfaces, making solid angle problematic to track, if not impossible.  
What is the solid angle of an ambient ray?  A source ray?  You see what 
I'm driving at.  (Parallel views also cannot have solid angle 
associated with rays.)

Even if we made solid angle available under the rare circumstances 
where it made sense and we knew it, what would you do with it?  It's 
not like you're going to resample your texture on the fly in a .cal 
file.  What would you do?  When I first considered this problem (many 
years ago), I decided that ray distance from the origin was as good a 
measure as any for driving these sorts of approximations, so that's why 
you have access to T.  If you've tried it and it really can't work for 
you, then is the time to start looking at alternatives.

-Greg

> From: Roland Schregle <[email protected]>
> Date: December 17, 2003 4:58:03 AM PST
>
> Peter Apian-Bennewitz wrote:
>
>> RenderMan (and probably others) use different textures/patterns 
>> depending on distance (more exactly on the solid angle the pixel 
>> covers).  This angle is not supplied in the function files (at least 
>> it wasn't when I discussed that with Greg two years ago), so view 
>> dependent textures are a bit tricky to do. One reason for not making 
>> it available was that it is known in rvu/rpict, but not rtrace. If we 
>> agree (on radiance-dev) it would be useful, I'd be happy to see this 
>> variable.
>
> Actually, a solid angle in the context of rtrace would be useful in 
> general. In situations where you don't need this info, you can simply 
> set it to zero, denoting an infinitesimal solid angle.