C# Class Axiom.Graphics.ShadowRenderable

Class which represents the renderable aspects of a set of shadow volume faces.
Note that for casters comprised of more than one set of vertex buffers (e.g. SubMeshes each using their own geometry), it will take more than one ShadowRenderable to render the shadow volume. Therefore for shadow caster geometry, it is best to stick to one set of vertex buffers (not necessarily one buffer, but the positions for the entire geometry should come from one buffer if possible)
Inheritance: DisposableObject, IRenderable
Show file Open project: WolfgangSt/axiom Class Usage Examples

Protected Properties

Property Type Description
customParams List
dummyLightList LightList
lightCap ShadowRenderable
material Material
renderOperation RenderOperation

Public Methods

Method Description
GetCustomParameter ( int index ) : Vector4
GetRenderOperationForUpdate ( ) : RenderOperation

Gets the internal render operation for setup.

GetSquaredViewDepth ( Camera camera ) : float
GetWorldTransforms ( Axiom matrices ) : void
SetCustomParameter ( int index, Vector4 val ) : void
UpdateCustomGpuParameter ( GpuProgramParameters entry, GpuProgramParameters gpuParams ) : void

Protected Methods

Method Description
ShadowRenderable ( ) : System
dispose ( bool disposeManagedResources ) : void

Class level dispose method

When implementing this method in an inherited class the following template should be used; protected override void dispose( bool disposeManagedResources ) { if ( !isDisposed ) { if ( disposeManagedResources ) { // Dispose managed resources. } // There are no unmanaged resources to release, but // if we add them, they need to be released here. } // If it is available, make the call to the // base class's Dispose(Boolean) method base.dispose( disposeManagedResources ); }

Method Details

GetCustomParameter() public method

public GetCustomParameter ( int index ) : Vector4
index int
return Vector4

GetRenderOperationForUpdate() public method

Gets the internal render operation for setup.
public GetRenderOperationForUpdate ( ) : RenderOperation
return RenderOperation

GetSquaredViewDepth() public method

public GetSquaredViewDepth ( Camera camera ) : float
camera Axiom.Core.Camera
return float

GetWorldTransforms() public abstract method

public abstract GetWorldTransforms ( Axiom matrices ) : void
matrices Axiom
return void

SetCustomParameter() public method

public SetCustomParameter ( int index, Vector4 val ) : void
index int
val Vector4
return void

ShadowRenderable() protected method

protected ShadowRenderable ( ) : System
return System

UpdateCustomGpuParameter() public method

public UpdateCustomGpuParameter ( GpuProgramParameters entry, GpuProgramParameters gpuParams ) : void
entry GpuProgramParameters
gpuParams GpuProgramParameters
return void

dispose() protected method

Class level dispose method
When implementing this method in an inherited class the following template should be used; protected override void dispose( bool disposeManagedResources ) { if ( !isDisposed ) { if ( disposeManagedResources ) { // Dispose managed resources. } // There are no unmanaged resources to release, but // if we add them, they need to be released here. } // If it is available, make the call to the // base class's Dispose(Boolean) method base.dispose( disposeManagedResources ); }
protected dispose ( bool disposeManagedResources ) : void
disposeManagedResources bool True if Unmanaged resources should be released.
return void

Property Details

customParams protected property

protected List customParams
return List

dummyLightList protected property

protected LightList dummyLightList
return LightList

lightCap protected property

Used only if IsLightCapSeparate == true.
protected ShadowRenderable,Axiom.Graphics lightCap
return ShadowRenderable

material protected property

protected Material,Axiom.Graphics material
return Material

renderOperation protected property

protected RenderOperation,Axiom.Graphics renderOperation
return RenderOperation