CrystalSpace

Public API Reference

iDecalManager Struct Reference
[Geometry utilities]

Creates and manages decals. More...

#include <ivaria/decal.h>

Inheritance diagram for iDecalManager:

List of all members.

Public Member Functions

virtual iDecalCreateDecal (iDecalTemplate *decalTemplate, iMeshWrapper *mesh, const csVector3 &pos, const csVector3 &up, const csVector3 &normal, float width=1.0f, float height=1.0f, iDecal *oldDecal=0)=0
 Creates a decal on a specific mesh.
virtual iDecalCreateDecal (iDecalTemplate *decalTemplate, iSector *sector, const csVector3 &pos, const csVector3 &up, const csVector3 &normal, float width=1.0f, float height=1.0f, iDecal *oldDecal=0)=0
 Creates a decal that can be shared among several meshes.
virtual csRef< iDecalTemplateCreateDecalTemplate (iMaterialWrapper *material)=0
 Creates a decal template and fills it with default values.
virtual void DeleteDecal (const iDecal *decal)=0
 Deletes the given decal.
virtual iDecalGetDecal (size_t idx) const =0
 Gets the specified decal.
virtual size_t GetDecalCount () const =0
 Gets the number of decals.

Detailed Description

Creates and manages decals.

To create a iDecal, just get access to this plugin using csLoadPluginCheck<iDecalManager>

Then, just use one of the decal creation functions:

Definition at line 394 of file decal.h.


Member Function Documentation

virtual iDecal* iDecalManager::CreateDecal ( iDecalTemplate decalTemplate,
iMeshWrapper mesh,
const csVector3 pos,
const csVector3 up,
const csVector3 normal,
float  width = 1.0f,
float  height = 1.0f,
iDecal oldDecal = 0 
) [pure virtual]

Creates a decal on a specific mesh.

Parameters:
decalTemplate The template used to create the decal.
mesh The mesh to put the decal on.
pos The position of the decal in world coordinates.
up The up direction of the decal in world coordinates.
normal The overall normal of the decal in world coordinates.
width The width of the decal.
height The height of the decal.
oldDecal An existing decal that can be reused for efficiency (it will therefore disappear from its previous position).
Returns:
True if the decal is created.
virtual iDecal* iDecalManager::CreateDecal ( iDecalTemplate decalTemplate,
iSector sector,
const csVector3 pos,
const csVector3 up,
const csVector3 normal,
float  width = 1.0f,
float  height = 1.0f,
iDecal oldDecal = 0 
) [pure virtual]

Creates a decal that can be shared among several meshes.

Parameters:
decalTemplate The template used to create the decal.
sector The sector to begin searching for nearby meshes.
pos The position of the decal in world coordinates.
up The up direction of the decal in world coordinates.
normal The overall normal of the decal in world coordinates.
width The width of the decal.
height The height of the decal.
oldDecal An existing decal that can be reused for efficiency (it will therefore disappear from its previous position).
Returns:
True if the decal is created.
virtual csRef<iDecalTemplate> iDecalManager::CreateDecalTemplate ( iMaterialWrapper material  )  [pure virtual]

Creates a decal template and fills it with default values.

Parameters:
material The material wrapper for this decal template.
Returns:
The newly created decal template.
virtual void iDecalManager::DeleteDecal ( const iDecal decal  )  [pure virtual]

Deletes the given decal.

Parameters:
decal The decal to be deleted.
virtual iDecal* iDecalManager::GetDecal ( size_t  idx  )  const [pure virtual]

Gets the specified decal.

Parameters:
idx The index of the decal to get, must be between 0 and GetDecalCount()-1
virtual size_t iDecalManager::GetDecalCount (  )  const [pure virtual]

Gets the number of decals.

Returns:
The number of decals.

The documentation for this struct was generated from the following file:

Generated for Crystal Space 2.1 by doxygen 1.6.1