II. TEMAS DE EVALUACION
2. ORGANIZACIÓN Y GESTIÓN DEL PROGRAMA
2.1. ESTRUCTURA ORGANIZACIONAL Y MECANISMOS DE COORDINACIÓN AL INTERIOR DE LA
Amanatides [10] extends the ray tracing concept of a ray to a cone. Instead of point sampling, cone tracing does area sampling. Achieving antialiasing requires shooting exactly one conic ray per pixel. Broadening the cone to the size of a cir- cular light source for shadow cones permits generation of soft shadows: a partial intersection with an object not covering the entire cone indicates penumbra, an in- tersection with an object covering an entire cone indicates umbra. Due to locally complex scenes, it may be necessary to divide up a single cone into a set of smaller cones to get a better approximation for soft shadowing, which can be complicated. Note that it is ideal to use cone tracing only for spherical (or ellipsoidal) lights. The lack of adoption of cone tracing is likely due to little success in performing ef- ficient intersection culling.Figure 4.29illustrates how cone tracing generates soft shadows.
Heckbert and Hanrahan [231] introduce beam tracing, which is very similar to cone tracing, except that beams (elongated pyramids) replace cones. It has the advantages of cone tracing, such as achieving soft shadows naturally (in this case, for polygonal lights). However, it also has the disadvantages of cone tracing, such as complex beam-geometry intersections and lack of an effective culling structure. Overbeck et al. [447] introduce fast algorithms for ray-geometry intersection and k-d tree traversal as a culling structure, which has pushed the performance of beam tracing quite significantly.
Poulin and Amanatides [465] introduce two structures to soft shadows for a linear light. The first involves a light triangle, where a light triangle is defined by the endpoints of the linear light and the point to be shaded. The regular grid
C pixel P camera cone cone spherical light shadow truncated
Figure 4.29. Approximating the shadowing of the pixel-cone intersection by a spherical light shadow cone.
P
light triangle
linear light visible occluded visible occluded visible
Figure 4.30. The light triangle formed by the point to be shaded and the linear light is intersected against the objects of the scene. The intersected objects are back-projected onto the linear light to determine the light illuminating segments.
voxels that encompass this triangle are identified through 3D scan-conversion, and the objects in these voxels are intersected against the light triangle. All objects that intersect the light triangle are projected toward the linear light to determine occlu- sion. Although this algorithm provides an analytic solution to the shadow value, the authors indicate that the results are slow due to the expensive scan-conversion. In fact, this analytic solution is one of the few that generate the correct soft shadow integral evaluation. SeeFigure 4.30, which shows the light triangle and how the shaded regions are the final segments of the linear light that are fully lit, and see Figure 4.31for a sample rendering.
Figure 4.31.Analytic solution for soft shadows from two linear light sources per rectangle. Image courtesy of Poulin and Amanatides [465], ©Eurographics Association 1990. Reproduced by permission of the Eurographics Association.
P −Z linearlight +Z P occluder shadow region in occluder in light region in light region region in shadow region in light in light region θ= 0 rp θmin θP rmin ϕP rmin rP θmax ψmax ψP ϕmax
Figure 4.32.Angles ϕ and ψ from the linear light axis [577].
Poulin and Amanatides [465] also propose a more efficient linear light buffer represented by an infinite cylinder oriented along the light. The cylinder is sub- divided into arcs along its radius. Objects radially projecting in an arc are added to the arc’s list. Any point to be shaded identifies the arc it resides in and projects the list of objects associated with this arc on the linear light. To further reduce arcs, each arc is divided into three parts: the left, center, and right side of the linear light. They [465] found this algorithm to be much faster than the scan-conversion approach, although it does require additional preprocessing and more memory to store pointers to the entire object set.
Tanaka and Takahashi [577] extend the linear light buffer so that the list of objects is partitioned as in the previous scheme [465], but it is also partitioned into layers along the radius of the infinite cylinder as well as in overlapping, partitioned bands that are ϕ and ψ angles from the linear light axis (seeFigure 4.32). The bands represent regions for potential shadow rays. A loop through all the partitioned regions is executed, projecting all hit segments with the light triangle to get the final shadow occlusion value. The memory requirements for this scheme appear to be quite large.
The same authors [578] extend their approach to deal with area lights. Par- titioned bands are created in each direction of the area light, and a 2D array of bands is produced. The light pyramid (instead of light triangles for linear lights) is intersected against the objects in the appropriate band. Instead of employing a typical and expensive polygon clipper to identify the lit regions on the area light in order to compute the visible regions of the area light analytically, a cross-scanline clipping algorithm [576] is used. Both algorithms provide analytic solutions to the shadowing of extended lights. Similarly, Stewart [563] is also able to compute exact regions of visibility with the area light source and the point to be shaded. Because of rendering systems that supersample to antialias, it is unclear if dis- tribution ray tracing [108] with a few shadow rays per supersample converges to the analytic solution just as easily without incurring the cost of the exact analytic solution.
Another class of back-projection techniques have been applied to radiosity [560, 141, 561, 142, 368, 101, 32] in order to find an optimal discontinuity mesh (see Section 5.10.1 for details).