Nirtcpp 2.1.0
Nirtcpp is a high-performance c++ graphics engine.
Loading...
Searching...
No Matches
IShadowVolumeSceneNode.hpp
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 nirtcpp/nirtcpp.hpp
4
5#ifndef NIRT_I_SHADOW_VOLUME_SCENE_NODE_HPP_INCLUDED
6#define NIRT_I_SHADOW_VOLUME_SCENE_NODE_HPP_INCLUDED
7
8#include <nirtcpp/core/engine/ISceneNode.hpp>
9
10namespace nirt
11{
12namespace scene
13{
14 class IMesh;
15
31
34 {
35 public:
36
39 : ISceneNode(parent, mgr, id) {}
40
42
44 virtual void setShadowMesh(const IMesh* mesh) = 0;
45
47 virtual void updateShadowVolumes() = 0;
48
50
55 virtual void setOptimization(ESHADOWVOLUME_OPTIMIZATION optimization) = 0;
56
59 };
60
61} // end namespace scene
62} // end namespace nirt
63
64#endif
Class which holds the geometry of an object.
Definition IMesh.hpp:72
The Scene Manager manages scene nodes, mesh resources, cameras and all the other stuff.
Definition ISceneManager.hpp:160
Scene node interface.
Definition ISceneNode.hpp:43
Scene node for rendering a shadow volume into a stencil buffer.
Definition IShadowVolumeSceneNode.hpp:34
virtual void setShadowMesh(const IMesh *mesh)=0
Sets the mesh from which the shadow volume should be generated.
virtual void setOptimization(ESHADOWVOLUME_OPTIMIZATION optimization)=0
Set optimization used to create shadow volumes.
virtual void updateShadowVolumes()=0
Updates the shadow volumes for current light positions.
IShadowVolumeSceneNode(ISceneNode *parent, ISceneManager *mgr, s32 id)
constructor
Definition IShadowVolumeSceneNode.hpp:38
virtual ESHADOWVOLUME_OPTIMIZATION getOptimization() const =0
Get currently active optimization used to create shadow volumes.
ESHADOWVOLUME_OPTIMIZATION
Definition IShadowVolumeSceneNode.hpp:17
@ ESV_NONE
Create volumes around every triangle.
Definition IShadowVolumeSceneNode.hpp:19
@ ESV_SILHOUETTE_BY_POS
Create volumes only around the silhouette of the mesh.
Definition IShadowVolumeSceneNode.hpp:29
As of Nirtcpp 1.6, position2d is a synonym for vector2d.
Definition vector3d.hpp:11
signed int s32
32 bit signed variable.
Definition irrTypes.hpp:72

Nirtcpp    @cppfx.xyz

Esvcpp    esv::print