ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/doc/notes/secsrc.note
Revision: 1.1
Committed: Sat Mar 15 17:32:55 2003 UTC (21 years ago) by greg
Branch: MAIN
CVS Tags: rad5R4, rad5R2, rad4R2P2, rad5R0, rad5R1, rad3R7P2, rad3R7P1, rad4R2, rad4R1, rad4R0, rad3R5, rad3R6, rad3R6P1, rad3R8, rad3R9, rad4R2P1, rad5R3, HEAD
Log Message:
Added and updated documentation for 3.5 release

File Contents

# Content
1 Virtual Light Sources
2 in Radiance
3
4 Radiance now supports virtual light sources in planar surfaces such as
5 mirrors. The method of virtual sources is used to create the appearance
6 of a new source in a virtual world on the other side of the transferring
7 surface, or "relay object." Shadow rays are then sent to these virtual
8 sources along with the regular sources, testing not only for occlusion
9 but also for the geometric boundaries of the virtual source path.
10 This is necessary to yield the correct light patch shape.
11
12 The method used for specifying virtual sources in Radiance is quite
13 simple. Certain materials possess the "virtual source" attribute.
14 When such a material modifies a planar surface, virtual light
15 sources are created. It is an error to use a virtual source material
16 on a non-planar surface such as a sphere. Currently, the materials
17 "mirror," "prism1" and "prism2" have the virtual light source attribute.
18
19 If multiple facing mirrors appear in a scene, the number of virtual
20 sources can multiply quite rapidly. We therefore introduce a limit to
21 the number of virtual source "relays" allowed, with the rendering
22 option -dr. A setting of -dr 0 means that virtual sources will not
23 be considered at all. Another technique that can limit the growth of
24 virtual sources is called "virtual source presampling," which is
25 controlled with the -dp option. Presampling tests a virtual source
26 for visibility before adding it to the calculation, thus avoiding the
27 inclusion of virtual sources that would never appear and the shadow
28 testing of virtual sources that are never occluded. A presampling
29 density of -dp 0 means that all virtual sources will be included and
30 fully tested for shadows. This is potentially much more expensive, but it
31 is the only way to guarantee absolute shadow accuracy at any resolution.
32
33 Even without presampling, Radiance performs many checks of virtual
34 sources before including them in the calculation. In addition to the
35 obvious tests to insure that a source is on the correct side of the
36 relay object, facing the proper direction and so on, Radiance also
37 computes the solid angle that corresponds to the maximum influence of
38 each virtual source. This greatly speeds up the direct calculation by
39 avoiding virtual source shadow tests that could not possibly pay off.
40
41 Nevertheless, virtual light sources can be quite costly, especially if
42 there are many mirror surfaces that see each other. Presampling avoids
43 most of the costs associated with fruitless testing, but in scenes with
44 mutual reflections, there may still be hundreds or even thousands of
45 virtual light sources created. Even with the solid angle limits, each
46 virtual source must be considered at least briefly before it is rejected.
47 It is therefore very important for efficiency to minimize the number of
48 mirror surfaces in a scene as much as possible. In particular, do not
49 make relay objects from many small mirror elements. Such elements should
50 be consolidated into the largest polygons possible.