Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials
IMaterialRenderer.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2010 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_MATERIAL_RENDERER_H_INCLUDED__
6 #define __I_MATERIAL_RENDERER_H_INCLUDED__
7 
8 #include "IReferenceCounted.h"
9 #include "SMaterial.h"
10 #include "S3DVertex.h"
11 
12 namespace irr
13 {
14 namespace video
15 {
16 
17 class IVideoDriver;
18 class IMaterialRendererServices;
19 
21 
24 class IMaterialRenderer : public virtual IReferenceCounted
25 {
26 public:
27 
29 
50  virtual void OnSetMaterial(const SMaterial& material, const SMaterial& lastMaterial,
51  bool resetAllRenderstates, IMaterialRendererServices* services) {}
52 
54 
71  virtual bool OnRender(IMaterialRendererServices* service, E_VERTEX_TYPE vtxtype) { return true; }
72 
74 
76  virtual void OnUnsetMaterial() {}
77 
79 
81  virtual bool isTransparent() const { return false; }
82 
84 
93  virtual s32 getRenderCapability() const { return 0; }
94 };
95 
96 
97 } // end namespace video
98 } // end namespace irr
99 
100 #endif
101 

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Tue Jun 5 2012 17:57:12 by Doxygen (1.8.1)