CrystalSpace

Public API Reference

Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

iMaterialWrapper Struct Reference
[Textures & Materials]

A material wrapper is an engine-level object that wraps around an actual material (iMaterialHandle). More...

#include <material.h>

Inheritance diagram for iMaterialWrapper:

iBase List of all members.

Public Methods

virtual iObjectQueryObject ()=0
 Get the iObject for this material.

virtual iMaterialWrapper * Clone () const=0
 Create a clone this material wrapper, using the same material handle.

virtual void SetMaterialHandle (iMaterialHandle *mat)=0
 Change the material handle.

virtual iMaterialHandleGetMaterialHandle ()=0
 Get the material handle.

virtual void SetMaterial (iMaterial *material)=0
 Change the base material.

virtual iMaterialGetMaterial ()=0
 Get the original material.

virtual void Register (iTextureManager *txtmng)=0
 Register the material with the texture manager.

virtual void Visit ()=0
 Visit this material.

virtual bool IsVisitRequired () const=0
 Return true if it is needed to call Visit().


Detailed Description

A material wrapper is an engine-level object that wraps around an actual material (iMaterialHandle).

Every material in the engine is represented by a material wrapper, which keeps the pointer to the material handle, its name, and possibly the base material object that was registered to create the material handle.

Definition at line 47 of file material.h.


Member Function Documentation

virtual iMaterialWrapper* iMaterialWrapper::Clone   [pure virtual]
 

Create a clone this material wrapper, using the same material handle.

virtual iMaterial* iMaterialWrapper::GetMaterial   [pure virtual]
 

Get the original material.

virtual iMaterialHandle* iMaterialWrapper::GetMaterialHandle   [pure virtual]
 

Get the material handle.

virtual bool iMaterialWrapper::IsVisitRequired   [pure virtual]
 

Return true if it is needed to call Visit().

virtual iObject* iMaterialWrapper::QueryObject   [pure virtual]
 

Get the iObject for this material.

virtual void iMaterialWrapper::Register iTextureManager   txtmng [pure virtual]
 

Register the material with the texture manager.

virtual void iMaterialWrapper::SetMaterial iMaterial   material [pure virtual]
 

Change the base material.

Note: The changes will not be visible until you re-register the material.

virtual void iMaterialWrapper::SetMaterialHandle iMaterialHandle   mat [pure virtual]
 

Change the material handle.

Note: This will also change the base material to 0.

virtual void iMaterialWrapper::Visit   [pure virtual]
 

Visit this material.

This should be called by the engine right before using the material. It will call Visit() on all textures that are used.


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.2.18