00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt 00002 // This file is part of the "Irrlicht Engine". 00003 // For conditions of distribution and use, see copyright notice in irrlicht.h 00004 00005 #ifndef __I_SHADOW_VOLUME_SCENE_NODE_H_INCLUDED__ 00006 #define __I_SHADOW_VOLUME_SCENE_NODE_H_INCLUDED__ 00007 00008 #include "ISceneNode.h" 00009 00010 namespace irr 00011 { 00012 namespace scene 00013 { 00014 class IMesh; 00015 00017 class IShadowVolumeSceneNode : public ISceneNode 00018 { 00019 public: 00020 00022 IShadowVolumeSceneNode(ISceneNode* parent, ISceneManager* mgr, s32 id) 00023 : ISceneNode(parent, mgr, id) {} 00024 00026 00028 virtual void setShadowMesh(const IMesh* mesh) = 0; 00029 00031 virtual void updateShadowVolumes() = 0; 00032 }; 00033 00034 } // end namespace scene 00035 } // end namespace irr 00036 00037 #endif 00038