C# Class Axiom.Graphics.AutoParamDataSource

This utility class is used to hold the information used to generate the matrices and other information required to automatically populate GpuProgramParameters.
This class exercises a lazy-update scheme in order to avoid having to update all the information a GpuProgramParameters class could possibly want all the time. It relies on the SceneManager to update it when the base data has changed, and will calculate concatenated matrices etc only when required, passing back precalculated matrices when they are requested more than once when the underlying information has not altered.
Inheritance: DisposableObject
Show file Open project: mono-soc-2011/axiom Class Usage Examples

Protected Properties

Property Type Description
ProjectionClipSpace2DToImageSpacePerspective Matrix4
ambientLight ColorEx
blankLight Light
camera Camera
cameraPositionObjectSpace Vector4
cameraPositionObjectSpaceDirty bool
currentLightList LightList
currentRenderTarget RenderTarget
currentTextureProjector Frustum
currentViewport Viewport
dirLightExtrusionDistance float
fogParams Vector4
inverseTransposeWorldViewMatrix Matrix4
inverseTransposeWorldViewMatrixDirty bool
inverseViewMatrix Matrix4
inverseViewMatrixDirty bool
inverseWorldMatrix Matrix4
inverseWorldMatrixDirty bool
inverseWorldViewMatrix Matrix4
inverseWorldViewMatrixDirty bool
mvShadowTechnique Vector4
passNumber int
projMatrixDirty bool
projectionMatrix Matrix4
renderable IRenderable
textureViewProjMatrix Matrix4
textureViewProjMatrixDirty bool
time float
viewMatrix Matrix4
viewMatrixDirty bool
viewProjMatrix Matrix4
viewProjMatrixDirty bool
worldMatrix Matrix4[]
worldMatrixCount int
worldMatrixDirty bool
worldViewMatrix Matrix4
worldViewMatrixDirty bool
worldViewProjMatrix Matrix4
worldViewProjMatrixDirty bool

Public Methods

Method Description
AutoParamDataSource ( ) : System

Default constructor.

GetLight ( int index ) : Light

Get the light which is 'index'th closest to the current object

GetLightPowerScale ( int index ) : Real

SetCurrentLightList ( LightList lightList ) : void

SetShadowDirLightExtrusionDistance ( float distance ) : void

Sets the constant extrusion distance for directional lights.

Protected Methods

Method Description
dispose ( bool disposeManagedResources ) : void

Method Details

AutoParamDataSource() public method

Default constructor.
public AutoParamDataSource ( ) : System
return System

GetLight() public method

Get the light which is 'index'th closest to the current object
public GetLight ( int index ) : Light
index int Ordinal value signifying the light to retreive, with 0 being closest, 1 being next closest, etc.
return Axiom.Core.Light

GetLightPowerScale() public method

public GetLightPowerScale ( int index ) : Real
index int Ordinal value signifying the light to retreive.
return Real

SetCurrentLightList() public method

public SetCurrentLightList ( LightList lightList ) : void
lightList LightList
return void

SetShadowDirLightExtrusionDistance() public method

Sets the constant extrusion distance for directional lights.
public SetShadowDirLightExtrusionDistance ( float distance ) : void
distance float
return void

dispose() protected method

protected dispose ( bool disposeManagedResources ) : void
disposeManagedResources bool
return void

Property Details

ProjectionClipSpace2DToImageSpacePerspective protected property

protected Matrix4 ProjectionClipSpace2DToImageSpacePerspective
return Matrix4

ambientLight protected property

Current global ambient light color.
protected ColorEx ambientLight
return ColorEx

blankLight protected property

Blank light to use when a higher index light is requested than is available.
protected Light blankLight
return Light

camera protected property

Current camera being used for rendering.
protected Camera camera
return Camera

cameraPositionObjectSpace protected property

Position of the current camera in object space relative to the current renderable.
protected Vector4 cameraPositionObjectSpace
return Vector4

cameraPositionObjectSpaceDirty protected property

protected bool cameraPositionObjectSpaceDirty
return bool

currentLightList protected property

List of lights that are in the scene and near the current renderable.
protected LightList currentLightList
return LightList

currentRenderTarget protected property

Current active render target.
protected RenderTarget currentRenderTarget
return RenderTarget

currentTextureProjector protected property

Current frustum used for texture projection.
protected Frustum currentTextureProjector
return Frustum

currentViewport protected property

The current viewport. We don't really do anything with this, but Ogre uses it to determine the width and height.
protected Viewport currentViewport
return Viewport

dirLightExtrusionDistance protected property

Distance to extrude shadow volume vertices.
protected float dirLightExtrusionDistance
return float

fogParams protected property

Parameters for GPU fog. fogStart, fogEnd, and fogScale
protected Vector4 fogParams
return Vector4

inverseTransposeWorldViewMatrix protected property

Inverse Transpose of the current world view matrix.
protected Matrix4 inverseTransposeWorldViewMatrix
return Matrix4

inverseTransposeWorldViewMatrixDirty protected property

protected bool inverseTransposeWorldViewMatrixDirty
return bool

inverseViewMatrix protected property

Inverse of the current view matrix.
protected Matrix4 inverseViewMatrix
return Matrix4

inverseViewMatrixDirty protected property

protected bool inverseViewMatrixDirty
return bool

inverseWorldMatrix protected property

Inverse of current world matrix.
protected Matrix4 inverseWorldMatrix
return Matrix4

inverseWorldMatrixDirty protected property

protected bool inverseWorldMatrixDirty
return bool

inverseWorldViewMatrix protected property

Inverse of current concatenated world and view matrices.
protected Matrix4 inverseWorldViewMatrix
return Matrix4

inverseWorldViewMatrixDirty protected property

protected bool inverseWorldViewMatrixDirty
return bool

mvShadowTechnique protected property

protected Vector4 mvShadowTechnique
return Vector4

passNumber protected property

protected int passNumber
return int

projMatrixDirty protected property

protected bool projMatrixDirty
return bool

projectionMatrix protected property

Current projection matrix.
protected Matrix4 projectionMatrix
return Matrix4

renderable protected property

Current target renderable.
protected IRenderable renderable
return IRenderable

textureViewProjMatrix protected property

Current texture view projection matrix.
protected Matrix4 textureViewProjMatrix
return Matrix4

textureViewProjMatrixDirty protected property

protected bool textureViewProjMatrixDirty
return bool

time protected property

current time
protected float time
return float

viewMatrix protected property

Current view matrix;
protected Matrix4 viewMatrix
return Matrix4

viewMatrixDirty protected property

protected bool viewMatrixDirty
return bool

viewProjMatrix protected property

Current view and projection matrices concatenated.
protected Matrix4 viewProjMatrix
return Matrix4

viewProjMatrixDirty protected property

protected bool viewProjMatrixDirty
return bool

worldMatrix protected property

Array of world matrices for the current renderable.
protected Matrix4[] worldMatrix
return Matrix4[]

worldMatrixCount protected property

Current count of matrices in the world matrix array.
protected int worldMatrixCount
return int

worldMatrixDirty protected property

protected bool worldMatrixDirty
return bool

worldViewMatrix protected property

Current concatenated world and view matrices.
protected Matrix4 worldViewMatrix
return Matrix4

worldViewMatrixDirty protected property

protected bool worldViewMatrixDirty
return bool

worldViewProjMatrix protected property

Current concatenated world, view, and projection matrices.
protected Matrix4 worldViewProjMatrix
return Matrix4

worldViewProjMatrixDirty protected property

protected bool worldViewProjMatrixDirty
return bool