View
213
Download
0
Embed Size (px)
Citation preview
Penumbra Maps: Penumbra Maps: Approximate Soft Shadows in Approximate Soft Shadows in
Real-TimeReal-Time
Chris Wyman and Charles HansenChris Wyman and Charles HansenUniversity of UtahUniversity of Utah
Speaker: AlvinSpeaker: Alvin
Date: 9/29/2003Date: 9/29/2003
EUROGRAPH 2003EUROGRAPH 2003
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
22
OutlineOutline
IntroductionIntroduction Penumbra MapPenumbra Map DiscussionDiscussion ResultResult Conclusions and Future WorksConclusions and Future Works
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
33
IntroductionIntroduction
Shadow Map + Penumbra MapShadow Map + Penumbra Map Three-pass processThree-pass process
Renders a standard shadow map.Renders a standard shadow map. Renders the penumbra map.Renders the penumbra map. Renders the final image.Renders the final image.
Penumbra Map = Light Intensity MapPenumbra Map = Light Intensity Map
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
44
IntroductionIntroduction
Shadow Map (left) and Penumbra Map (right).
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
55
Penumbra MapPenumbra Map
Input: (See from the light center)Input: (See from the light center) A standard shadow map.A standard shadow map. Silhouette vertices and edges.Silhouette vertices and edges.
Use Haines’ shadow plateaus.Use Haines’ shadow plateaus.
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
66
Penumbra Cone & SheetPenumbra Cone & Sheet
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
77
FragmentFragment
i
i
i VP
VF
VP
FP
ZZ
ZZ
ZZ
ZZI
1
32 23' III (Bernstein interpolant)
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
88
DiscussionDiscussion
Overlapping penumbra.Overlapping penumbra. As an area light increases in size, As an area light increases in size,
silhouettes vary more over the light silhouettes vary more over the light so the generated shadows will so the generated shadows will become less realistic.become less realistic.
As a shadow’s umbra size shrinks, As a shadow’s umbra size shrinks, there are noticeably larger, darker there are noticeably larger, darker shadows.shadows.
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
99
Overlapping PenumbraOverlapping Penumbra
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
1010
ResultResult
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
1111
ResultResult
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
1212
ResultResult
Alivn/GAME LAB/CSIAlivn/GAME LAB/CSIE/NDHUE/NDHU
Penumbra Maps: Approximate SofPenumbra Maps: Approximate Soft Shadows in Real-Timet Shadows in Real-Time
1313
Conclusions and Future Conclusions and Future WorksWorks
Rendering approximate soft shadows Rendering approximate soft shadows in real-time.in real-time.
Allow dynamical models to cast soft Allow dynamical models to cast soft shadows.shadows.
Approximate a full penumbra using Approximate a full penumbra using vertex programs to adjust the vertex programs to adjust the silhouette edge points.silhouette edge points.
Implement in hardware.Implement in hardware.