150 likes | 271 Views
Dynamic Shadows and Lighting for Walkthrus of Large Models. Brandon Lloyd COMP 258 December 2002. Why Are Shadows Important?. Why Are Shadows Important?. Shadow Maps. Eye. Light. Shadow Maps. Advantages Only one additional render pass Very easy to use Disadvantages Aliasing problems
E N D
Dynamic Shadows and Lighting for Walkthrus of Large Models Brandon Lloyd COMP 258 December 2002
Shadow Maps Eye Light
Shadow Maps • Advantages • Only one additional render pass • Very easy to use • Disadvantages • Aliasing problems • Resolution restricted to available memory • Requires a user-set bias.
Better utilizes available samples by warping depth map Find the volume that can contribute shadows to the view Fit light frustum to the volume in camera’s post-perspective space Render depth map in camera’s post-perspective space. Perspective Shadow Maps Perspective
Perspective Shadow Maps Standard Shadow Map Perspective Shadow Map
Perspective Shadow Maps Standard Shadow Map Perspective Shadow Map
Perspective Shadow Maps Standard Shadow Maps Perspective Shadow Maps
Shadow Volumes • Extrude shadow frusta from occluder edges to infinity • Count crossings from eye to a point: • Front faces: +1 • Back faces: -1 • If crossings > 0 then point is in shadow 0 0 1 1 1 2 2
Advantages: No aliasing. Crisp shadow edges Can be done on commodity hardware Light need not be restricted to a frustum Shadow Volumes
Advantages: No aliasing. Crisp shadow edges Can be done on commodity hardware Light need not be restricted to a frustum Disadvantages: Needs CPU FILL!!! 4.8 billion pixels per second / (1024 * 1024 ) 4600 screen fills per second Shadow Volumes
Possible Solutions • Calculate intersection of shadow frusta with object bounding boxes • Utilize CPU to calculate shadow polygons • Use GPUs to obtain visible set from eye and light • Intersect each eye polygon with overlapping light frusta • Use stencil to fuse shadow polygons