diff options
Diffstat (limited to 'libraries/irrlicht-1.8.1/include/IShadowVolumeSceneNode.h')
-rw-r--r-- | libraries/irrlicht-1.8.1/include/IShadowVolumeSceneNode.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/libraries/irrlicht-1.8.1/include/IShadowVolumeSceneNode.h b/libraries/irrlicht-1.8.1/include/IShadowVolumeSceneNode.h new file mode 100644 index 0000000..82c2ad3 --- /dev/null +++ b/libraries/irrlicht-1.8.1/include/IShadowVolumeSceneNode.h | |||
@@ -0,0 +1,38 @@ | |||
1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt | ||
2 | // This file is part of the "Irrlicht Engine". | ||
3 | // For conditions of distribution and use, see copyright notice in irrlicht.h | ||
4 | |||
5 | #ifndef __I_SHADOW_VOLUME_SCENE_NODE_H_INCLUDED__ | ||
6 | #define __I_SHADOW_VOLUME_SCENE_NODE_H_INCLUDED__ | ||
7 | |||
8 | #include "ISceneNode.h" | ||
9 | |||
10 | namespace irr | ||
11 | { | ||
12 | namespace scene | ||
13 | { | ||
14 | class IMesh; | ||
15 | |||
16 | //! Scene node for rendering a shadow volume into a stencil buffer. | ||
17 | class IShadowVolumeSceneNode : public ISceneNode | ||
18 | { | ||
19 | public: | ||
20 | |||
21 | //! constructor | ||
22 | IShadowVolumeSceneNode(ISceneNode* parent, ISceneManager* mgr, s32 id) | ||
23 | : ISceneNode(parent, mgr, id) {} | ||
24 | |||
25 | //! Sets the mesh from which the shadow volume should be generated. | ||
26 | /** To optimize shadow rendering, use a simpler mesh for shadows. | ||
27 | */ | ||
28 | virtual void setShadowMesh(const IMesh* mesh) = 0; | ||
29 | |||
30 | //! Updates the shadow volumes for current light positions. | ||
31 | virtual void updateShadowVolumes() = 0; | ||
32 | }; | ||
33 | |||
34 | } // end namespace scene | ||
35 | } // end namespace irr | ||
36 | |||
37 | #endif | ||
38 | |||