Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials

# IMaterialRenderer.h

Go to the documentation of this file.

    00001 // Copyright (C) 2002-2009 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
    00050         virtual void OnSetMaterial(const SMaterial& material, const SMaterial& lastMaterial,
    00051                 bool resetAllRenderstates, IMaterialRendererServices* services) {}
    00052
    00054
    00071         virtual bool OnRender(IMaterialRendererServices* service, E_VERTEX_TYPE vtxtype) { return true; }
    00072
    00074
    00076         virtual void OnUnsetMaterial() {}
    00077
    00079
    00081         virtual bool isTransparent() const { return false; }
    00082
    00084
    00093         virtual s32 getRenderCapability() const { return 0; }
    00094 };
    00095
    00096
    00097 } // end namespace video
    00098 } // end namespace irr
    00099
    00100 #endif
    00101

| The Irrlicht Engine Documentation © 2003-2009 by Nikolaus Gebhardt. Generated on Sun Jan 10 09:24:03 2010 by Doxygen (1.5.6)