Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
W3DVolumetricShadowManager Class Reference

#include <W3DVolumetricShadow.h>

Public Member Functions

 W3DVolumetricShadowManager (void)
 
 ~W3DVolumetricShadowManager (void)
 
Bool init (void)
 initialize resources used by manager, must have valid D3D device.
 
void reset (void)
 
W3DVolumetricShadowaddShadow (RenderObjClass *robj, Shadow::ShadowTypeInfo *shadowInfo, Drawable *draw)
 adds shadow caster to rendering system.
 
void removeShadow (W3DVolumetricShadow *shadow)
 removed shadow from rendering system and frees its resources.
 
void removeAllShadows (void)
 
void addDynamicShadowTask (W3DVolumetricShadowRenderTask *task)
 queues up a dynamic shadow caster for rendering - only used internally by shadow system.
 
void invalidateCachedLightPositions (void)
 forces shadow volumes to update regardless of last lightposition
 
void loadTerrainShadows (void)
 
void renderShadows (Bool forceStencilFill)
 
void ReleaseResources (void)
 
Bool ReAcquireResources (void)
 

Protected Member Functions

void renderStencilShadows (void)
 

Protected Attributes

W3DVolumetricShadowm_shadowList
 
W3DVolumetricShadowRenderTaskm_dynamicShadowVolumesToRender
 
W3DShadowGeometryManagerm_W3DShadowGeometryManager
 

Detailed Description

Definition at line 53 of file W3DVolumetricShadow.h.

Constructor & Destructor Documentation

◆ W3DVolumetricShadowManager()

W3DVolumetricShadowManager::W3DVolumetricShadowManager ( void )

Definition at line 3749 of file W3DVolumetricShadow.cpp.

◆ ~W3DVolumetricShadowManager()

W3DVolumetricShadowManager::~W3DVolumetricShadowManager ( void )

Definition at line 3762 of file W3DVolumetricShadow.cpp.

Member Function Documentation

◆ addDynamicShadowTask()

void W3DVolumetricShadowManager::addDynamicShadowTask ( W3DVolumetricShadowRenderTask * task)
inline

queues up a dynamic shadow caster for rendering - only used internally by shadow system.

Definition at line 67 of file W3DVolumetricShadow.h.

◆ addShadow()

W3DVolumetricShadow * W3DVolumetricShadowManager::addShadow ( RenderObjClass * robj,
Shadow::ShadowTypeInfo * shadowInfo,
Drawable * draw )

adds shadow caster to rendering system.

Definition at line 3854 of file W3DVolumetricShadow.cpp.

◆ init()

Bool W3DVolumetricShadowManager::init ( void )

initialize resources used by manager, must have valid D3D device.

Definition at line 3833 of file W3DVolumetricShadow.cpp.

◆ invalidateCachedLightPositions()

void W3DVolumetricShadowManager::invalidateCachedLightPositions ( void )

forces shadow volumes to update regardless of last lightposition

Used to cause a rebuild of all shadow volumes

Definition at line 3725 of file W3DVolumetricShadow.cpp.

◆ loadTerrainShadows()

void W3DVolumetricShadowManager::loadTerrainShadows ( void )

◆ ReAcquireResources()

Bool W3DVolumetricShadowManager::ReAcquireResources ( void )

(Re)allocates all W3D/D3D assets after a reset..

Definition at line 3791 of file W3DVolumetricShadow.cpp.

◆ ReleaseResources()

void W3DVolumetricShadowManager::ReleaseResources ( void )

Releases all W3D/D3D assets before a reset..

Definition at line 3776 of file W3DVolumetricShadow.cpp.

◆ removeAllShadows()

void W3DVolumetricShadowManager::removeAllShadows ( void )

Remove all shadows.

removeAllShadows =========================================================== Removes all shadows from the shadow manger. No further

shadows will be rendered.

Definition at line 3938 of file W3DVolumetricShadow.cpp.

◆ removeShadow()

void W3DVolumetricShadowManager::removeShadow ( W3DVolumetricShadow * shadow)

removed shadow from rendering system and frees its resources.

removeShadow =========================================================== Removes the shadows for this hierarchy from the shadow manger. No further

shadows from this caster will be rendered.

Definition at line 3912 of file W3DVolumetricShadow.cpp.

◆ renderShadows()

void W3DVolumetricShadowManager::renderShadows ( Bool forceStencilFill)
Todo
: Put this check back in after water is fixed so it doesn't require shadow rendering to fix alpha.

Definition at line 3453 of file W3DVolumetricShadow.cpp.

◆ renderStencilShadows()

void W3DVolumetricShadowManager::renderStencilShadows ( void )
protected

Definition at line 3387 of file W3DVolumetricShadow.cpp.

◆ reset()

void W3DVolumetricShadowManager::reset ( void )

Definition at line 3841 of file W3DVolumetricShadow.cpp.

Member Data Documentation

◆ m_dynamicShadowVolumesToRender

W3DVolumetricShadowRenderTask* W3DVolumetricShadowManager::m_dynamicShadowVolumesToRender
protected

Definition at line 86 of file W3DVolumetricShadow.h.

◆ m_shadowList

W3DVolumetricShadow* W3DVolumetricShadowManager::m_shadowList
protected

Definition at line 85 of file W3DVolumetricShadow.h.

◆ m_W3DShadowGeometryManager

W3DShadowGeometryManager* W3DVolumetricShadowManager::m_W3DShadowGeometryManager
protected

Definition at line 87 of file W3DVolumetricShadow.h.


The documentation for this class was generated from the following files: