| OpenGLContext.shadow | index p:\openglcontext\shadow\__init__.py |
Stencil-buffer-based shadowing implementation
From an article by Eric Lengyel in Gamasutra:
http://www.gamasutra.com/features/20021011/lengyel_01.htm
and the related paper:
http://developer.nvidia.com/docs/IO/2585/ATT/RobustShadowVolumes.pdf
Python implementation by Mike Fletcher. Note that
this is not a direct translation of the original approach.
Also note that, although I'm trying to follow the examples,
most of the actual code in the article just wouldn't fly in
Python, so I tend to use a lot of Numeric Python functions
instead.
Usage:
OpenGLContext.shadow.shadowcontext.ShadowContext is a
mix-in class for Contexts which provides the necessary
features for rendering shadows.
Notes:
Only IndexedFaceSet nodes may cast shadows in the
current implementation.
Single-face edges are not supported, and will cause
artifacts.
There will be problems trying to render degenerate faces.
| Package Contents | ||
| __init__ -- Stencil-buffer-based shadowing implementation edgeset -- Class encapsulating the set of edges within an IndexedFaceSet passes -- Compound passes for rendering a shadowed scene... pinfperspective -- Utility to create an "infinite perspective matrix" shadowcontext -- Context mix-in providing support for shadow rendering algorithm volume -- Shadow-volume implementation | ||
| Data | ||
| __path__ = [r'p:\OpenGLContext\shadow'] | ||