Date post: | 20-Dec-2015 |
Category: |
Documents |
View: | 215 times |
Download: | 2 times |
Shadow Volumes on ProgrammaShadow Volumes on Programmable Graphics Hardwareble Graphics Hardware
Speaker: AlvinSpeaker: Alvin
Date: 2003/11/3Date: 2003/11/3
EUROGRAPHICS 2003EUROGRAPHICS 2003
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
22
OutlineOutline
MotivationMotivation Silhouette DetectionSilhouette Detection Generation of Shadow VolumesGeneration of Shadow Volumes ImplementationImplementation ResultResult Conclusion & Future WorkConclusion & Future Work
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
33
MotivationMotivation
Consistent precision.Consistent precision. Objects can be used with vertex shader.Objects can be used with vertex shader. Gain more CPU time.Gain more CPU time. No longer needs to synchronize.No longer needs to synchronize. Silhouette extraction is speed up.Silhouette extraction is speed up. Becomes very simple.Becomes very simple.
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
44
Silhouette DetectionSilhouette Detection
Input Mesh
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
55
Generation of Shadow VolumesGeneration of Shadow Volumes
Each vertex has a total of three indices and Each vertex has a total of three indices and one flag.one flag.– Two indices referring to the world space Two indices referring to the world space
coordinates of the edge’s two end points.coordinates of the edge’s two end points.– One index referring to the silhouette flag and One index referring to the silhouette flag and
the vertex-ordering for the given edge.the vertex-ordering for the given edge.– A flag indicating whether the vertex lie on the A flag indicating whether the vertex lie on the
edge or extruded to infinity.edge or extruded to infinity.
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
66
Generation of Shadow VolumesGeneration of Shadow Volumes
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
77
ImplementationImplementation
On ATI Radeon 9700 card using OpenGL.On ATI Radeon 9700 card using OpenGL. Uses a floating point RGBA offscreen buffer.Uses a floating point RGBA offscreen buffer. Supports up to 12 light sources.Supports up to 12 light sources. ProposePropose
– Texture access during vertex processing.Texture access during vertex processing.– A fast, on the card copy from frame buffer to a A fast, on the card copy from frame buffer to a
vertex attribute array.vertex attribute array.
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
88
ResultResult
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
99
ResultResult
Alivn/GAME LAB/CSIE/NAlivn/GAME LAB/CSIE/NDHUDHU
Shadow Volumes on Programmable Shadow Volumes on Programmable Graphics HardwareGraphics Hardware
1010
Conclusion & Future WorkConclusion & Future Work
Perform silhouette detection in hardware.Perform silhouette detection in hardware. The shadowing objects can be transformed The shadowing objects can be transformed
by vertex shader.by vertex shader. Buffer read-back are already visible in Buffer read-back are already visible in
OpenGL 2.0 specification.OpenGL 2.0 specification. Solve the near/far plane intersection Solve the near/far plane intersection
problem.problem. NPRNPR