| Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members |
00001 // Copyright (C) 2002-2008 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_MATERIAL_RENDERER_H_INCLUDED__ 00006 #define __I_MATERIAL_RENDERER_H_INCLUDED__ 00007 00008 #include "IReferenceCounted.h" 00009 #include "SMaterial.h" 00010 #include "S3DVertex.h" 00011 00012 namespace irr 00013 { 00014 namespace video 00015 { 00016 00017 class IVideoDriver; 00018 class IMaterialRendererServices; 00019 00021 00024 class IMaterialRenderer : public virtual IReferenceCounted 00025 { 00026 public: 00027 00029 virtual ~IMaterialRenderer() {} 00030 00032 00053 virtual void OnSetMaterial(const SMaterial& material, const SMaterial& lastMaterial, 00054 bool resetAllRenderstates, IMaterialRendererServices* services) {} 00055 00057 00074 virtual bool OnRender(IMaterialRendererServices* service, E_VERTEX_TYPE vtxtype) { return true; } 00075 00077 00079 virtual void OnUnsetMaterial() {} 00080 00082 00084 virtual bool isTransparent() const { return false; } 00085 00087 00096 virtual s32 getRenderCapability() const { return 0; } 00097 }; 00098 00099 00100 } // end namespace video 00101 } // end namespace irr 00102 00103 #endif 00104
| The Irrlicht
Engine Documentation © 2003-2008 by Nikolaus Gebhardt. Generated
on Sun Sep 21 08:57:41 2008 by Doxygen
(1.4.2) |