CrystalSpace

Public API Reference

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

iShadowBlock Struct Reference
[Lighting]

A block of shadows represent the shadows that are casted by one iShadowCaster object. More...

#include <iengine/shadows.h>

Inheritance diagram for iShadowBlock:

iBase List of all members.

Public Member Functions

virtual iShadowIteratorGetShadowIterator (bool reverse=false)=0
 Get an iterator to iterate over all shadows in this block.
virtual void DeleteShadows ()=0
 Dereference all shadows in the list.
virtual void AddRelevantShadows (iShadowBlock *source, csTransform *trans=0)=0
 Copy all relevant shadow frustums from another shadow block into this block.
virtual void AddRelevantShadows (iShadowBlockList *source)=0
 Copy all relevant shadow frustums from another shadow block list into this block.
virtual void AddAllShadows (iShadowBlockList *source)=0
 Copy all shadow frustums from another shadow block list into this block.
virtual void AddUniqueRelevantShadows (iShadowBlockList *source)=0
 Add unique shadows.
virtual csFrustumAddShadow (const csVector3 &origin, void *userData, int num_verts, csPlane3 &backplane)=0
 Add a new frustum and return a reference.
virtual void UnlinkShadow (int idx)=0
 Unlink a shadow frustum from the list and dereference it.
virtual int GetShadowCount ()=0
 Get the number of shadows in this list.
virtual csFrustumGetShadow (int idx)=0
 Get the specified shadow.
virtual void Transform (csTransform *trans)=0
 Apply a transformation to all frustums in this list.
virtual const csBox3GetBoundingBox ()=0
 Get the bounding box of this shadow block.

Detailed Description

A block of shadows represent the shadows that are casted by one iShadowCaster object.

Definition at line 72 of file shadows.h.


Member Function Documentation

virtual void iShadowBlock::AddAllShadows iShadowBlockList source  )  [pure virtual]
 

Copy all shadow frustums from another shadow block list into this block.

The frustums are not really copied but a new reference is kept.

virtual void iShadowBlock::AddRelevantShadows iShadowBlockList source  )  [pure virtual]
 

Copy all relevant shadow frustums from another shadow block list into this block.

The frustums are not really copied but a new reference is kept.

virtual void iShadowBlock::AddRelevantShadows iShadowBlock source,
csTransform trans = 0
[pure virtual]
 

Copy all relevant shadow frustums from another shadow block into this block.

The frustums are not really copied but a new reference is kept. However, if a transformation is given then a copy is made and the shadows are transformed.

virtual csFrustum* iShadowBlock::AddShadow const csVector3 origin,
void *  userData,
int  num_verts,
csPlane3 backplane
[pure virtual]
 

Add a new frustum and return a reference.

The frustum will have the specified number of vertices but the vertices still need to be initialized.

virtual void iShadowBlock::AddUniqueRelevantShadows iShadowBlockList source  )  [pure virtual]
 

Add unique shadows.

Only add relevant shadow frustums that are not already in the current list. The frustums are not really copied but a new reference is kept.

virtual void iShadowBlock::DeleteShadows  )  [pure virtual]
 

Dereference all shadows in the list.

virtual const csBox3& iShadowBlock::GetBoundingBox  )  [pure virtual]
 

Get the bounding box of this shadow block.

virtual csFrustum* iShadowBlock::GetShadow int  idx  )  [pure virtual]
 

Get the specified shadow.

virtual int iShadowBlock::GetShadowCount  )  [pure virtual]
 

Get the number of shadows in this list.

virtual iShadowIterator* iShadowBlock::GetShadowIterator bool  reverse = false  )  [pure virtual]
 

Get an iterator to iterate over all shadows in this block.

virtual void iShadowBlock::Transform csTransform trans  )  [pure virtual]
 

Apply a transformation to all frustums in this list.

virtual void iShadowBlock::UnlinkShadow int  idx  )  [pure virtual]
 

Unlink a shadow frustum from the list and dereference it.


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