Google

Main Page   Class Hierarchy   Compound List   File List   Compound Members  

iMaterialWrapper Struct Reference

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 csMaterialWrapperGetPrivateObject ()=0
 @Ugly. More...

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. More...

virtual iMaterialHandleGetMaterialHandle ()=0
 Get the material handle.

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

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. More...


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.


Member Function Documentation

csMaterialWrapper * iMaterialWrapper::GetPrivateObject ( ) [pure virtual]
 

@Ugly.

@

void iMaterialWrapper::SetMaterial ( iMaterial * material ) [pure virtual]
 

Change the base material.

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

void iMaterialWrapper::SetMaterialHandle ( iMaterialHandle * mat ) [pure virtual]
 

Change the material handle.

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

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.5 written by Dimitri van Heesch, ©1997-2000