C# 클래스 OctreeZone.TerrainZoneRenderable

상속: Axiom.Graphics.SimpleRenderable
파일 보기 프로젝트 열기: WolfgangSt/axiom 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
DELTA_BINDING short
MAIN_BINDING short
MORPH_CUSTOM_PARAM_ID int
STITCH_EAST int
STITCH_EAST_SHIFT int
STITCH_NORTH int
STITCH_NORTH_SHIFT int
STITCH_SOUTH int
STITCH_SOUTH_SHIFT int
STITCH_WEST int
STITCH_WEST_SHIFT int

공개 메소드들

메소드 설명
AdjustRenderLevel ( int i ) : void
CalculateCFactor ( ) : Real
CalculateMinLevelDist2 ( Real C ) : void
CalculateNormals ( ) : void
CheckSize ( int n ) : bool
CreateDeltaBuffer ( ) : HardwareVertexBuffer
DeleteGeometry ( ) : void
GenerateTriListIndexes ( uint stitchFlags ) : IndexData
GenerateTriStripIndexes ( uint stitchFlags ) : IndexData
GenerateVertexLighting ( Vector3 sunlight, ColorEx ambient ) : void
GetHeightAt ( float x, float z ) : float
GetIndexData ( ) : IndexData
GetNeighbor ( Neighbor neighbor ) : TerrainZoneRenderable
GetNormalAt ( float x, float z, Vector3 &result ) : void
GetSquaredViewDepth ( Camera camera ) : float

Returns the camera-relative squared depth of this renderable.

Used to sort transparent objects. Squared depth is used rather than actual depth to avoid having to perform a square root on the result.

GetWorldOrientation ( ) : Quaternion
GetWorldPosition ( ) : Vector3
GetWorldTransforms ( Matrix4 matrices ) : void

Gets the world transform matrix / matrices for this renderable object.

If the object has any derived transforms, these are expected to be up to date as long as all the SceneNode structures have been updated before this is called.

This method will populate xform with 1 matrix if it does not use vertex blending. If it does use vertex blending it will fill the passed in pointer with an array of matrices, the length being the value returned from getNumWorldTransforms.

HasNeighborRenderLevel ( int i ) : bool
Index ( int x, int z ) : ushort
Initialize ( int startx, int startz, Real pageHeightData ) : void
IntersectSegment ( Vector3 start, Vector3 end, Vector3 &result ) : bool
NotifyCurrentCamera ( Camera cam ) : void
NumNeighbors ( ) : int
SetNeighbor ( Neighbor n, TerrainZoneRenderable t ) : void
StitchEdge ( Neighbor neighbor, int hiLOD, int loLOD, bool omitFirstTri, bool omitLastTri, ushort ppIdx ) : int
TerrainZoneRenderable ( string name, TerrainZone tsm ) : System
UpdateCustomGpuParameter ( GpuProgramParameters constantEntry, GpuProgramParameters param ) : void

Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows.

This method allows a Renderable to map in a custom GPU program parameter based on it's own data. This is represented by a GPU auto parameter of AutoConstantType.Custom, and to allow there to be more than one of these per Renderable, the 'data' field on the auto parameter will identify which parameter is being updated. The implementation of this method must identify the parameter being updated, and call a 'SetConstant' method on the passed in GpuProgramParameters object, using the details provided in the incoming auto constant setting to identify the index at which to set the parameter.

UpdateRenderQueue ( RenderQueue queue ) : void
Vertex ( int x, int z, int n ) : float

메소드 상세

AdjustRenderLevel() 공개 메소드

public AdjustRenderLevel ( int i ) : void
i int
리턴 void

CalculateCFactor() 공개 메소드

public CalculateCFactor ( ) : Real
리턴 Real

CalculateMinLevelDist2() 공개 메소드

public CalculateMinLevelDist2 ( Real C ) : void
C Real
리턴 void

CalculateNormals() 공개 메소드

public CalculateNormals ( ) : void
리턴 void

CheckSize() 공개 메소드

public CheckSize ( int n ) : bool
n int
리턴 bool

CreateDeltaBuffer() 공개 메소드

public CreateDeltaBuffer ( ) : HardwareVertexBuffer
리턴 Axiom.Graphics.HardwareVertexBuffer

DeleteGeometry() 공개 메소드

public DeleteGeometry ( ) : void
리턴 void

GenerateTriListIndexes() 공개 메소드

public GenerateTriListIndexes ( uint stitchFlags ) : IndexData
stitchFlags uint
리턴 Axiom.Graphics.IndexData

GenerateTriStripIndexes() 공개 메소드

public GenerateTriStripIndexes ( uint stitchFlags ) : IndexData
stitchFlags uint
리턴 Axiom.Graphics.IndexData

GenerateVertexLighting() 공개 메소드

public GenerateVertexLighting ( Vector3 sunlight, ColorEx ambient ) : void
sunlight Vector3
ambient Axiom.Core.ColorEx
리턴 void

GetHeightAt() 공개 메소드

public GetHeightAt ( float x, float z ) : float
x float
z float
리턴 float

GetIndexData() 공개 메소드

public GetIndexData ( ) : IndexData
리턴 Axiom.Graphics.IndexData

GetNeighbor() 공개 메소드

public GetNeighbor ( Neighbor neighbor ) : TerrainZoneRenderable
neighbor Neighbor
리턴 TerrainZoneRenderable

GetNormalAt() 공개 메소드

public GetNormalAt ( float x, float z, Vector3 &result ) : void
x float
z float
result Vector3
리턴 void

GetSquaredViewDepth() 공개 메소드

Returns the camera-relative squared depth of this renderable.
Used to sort transparent objects. Squared depth is used rather than actual depth to avoid having to perform a square root on the result.
public GetSquaredViewDepth ( Camera camera ) : float
camera Axiom.Core.Camera
리턴 float

GetWorldOrientation() 공개 메소드

public GetWorldOrientation ( ) : Quaternion
리턴 Axiom.Math.Quaternion

GetWorldPosition() 공개 메소드

public GetWorldPosition ( ) : Vector3
리턴 Vector3

GetWorldTransforms() 공개 메소드

Gets the world transform matrix / matrices for this renderable object.
If the object has any derived transforms, these are expected to be up to date as long as all the SceneNode structures have been updated before this is called.

This method will populate xform with 1 matrix if it does not use vertex blending. If it does use vertex blending it will fill the passed in pointer with an array of matrices, the length being the value returned from getNumWorldTransforms.

public GetWorldTransforms ( Matrix4 matrices ) : void
matrices Axiom.Math.Matrix4
리턴 void

HasNeighborRenderLevel() 공개 메소드

public HasNeighborRenderLevel ( int i ) : bool
i int
리턴 bool

Index() 공개 메소드

public Index ( int x, int z ) : ushort
x int
z int
리턴 ushort

Initialize() 공개 메소드

public Initialize ( int startx, int startz, Real pageHeightData ) : void
startx int
startz int
pageHeightData Real
리턴 void

IntersectSegment() 공개 메소드

public IntersectSegment ( Vector3 start, Vector3 end, Vector3 &result ) : bool
start Vector3
end Vector3
result Vector3
리턴 bool

NotifyCurrentCamera() 공개 메소드

public NotifyCurrentCamera ( Camera cam ) : void
cam Axiom.Core.Camera
리턴 void

NumNeighbors() 공개 메소드

public NumNeighbors ( ) : int
리턴 int

SetNeighbor() 공개 메소드

public SetNeighbor ( Neighbor n, TerrainZoneRenderable t ) : void
n Neighbor
t TerrainZoneRenderable
리턴 void

StitchEdge() 공개 메소드

public StitchEdge ( Neighbor neighbor, int hiLOD, int loLOD, bool omitFirstTri, bool omitLastTri, ushort ppIdx ) : int
neighbor Neighbor
hiLOD int
loLOD int
omitFirstTri bool
omitLastTri bool
ppIdx ushort
리턴 int

TerrainZoneRenderable() 공개 메소드

public TerrainZoneRenderable ( string name, TerrainZone tsm ) : System
name string
tsm TerrainZone
리턴 System

UpdateCustomGpuParameter() 공개 메소드

Update a custom GpuProgramParameters constant which is derived from information only this Renderable knows.
This method allows a Renderable to map in a custom GPU program parameter based on it's own data. This is represented by a GPU auto parameter of AutoConstantType.Custom, and to allow there to be more than one of these per Renderable, the 'data' field on the auto parameter will identify which parameter is being updated. The implementation of this method must identify the parameter being updated, and call a 'SetConstant' method on the passed in GpuProgramParameters object, using the details provided in the incoming auto constant setting to identify the index at which to set the parameter.
public UpdateCustomGpuParameter ( GpuProgramParameters constantEntry, GpuProgramParameters param ) : void
constantEntry Axiom.Graphics.GpuProgramParameters The auto constant entry referring to the parameter being updated.
param Axiom.Graphics.GpuProgramParameters The parameters object which this method should call to set the updated parameters.
리턴 void

UpdateRenderQueue() 공개 메소드

public UpdateRenderQueue ( RenderQueue queue ) : void
queue Axiom.Graphics.RenderQueue
리턴 void

Vertex() 공개 메소드

public Vertex ( int x, int z, int n ) : float
x int
z int
n int
리턴 float

프로퍼티 상세

DELTA_BINDING 공개적으로 정적으로 프로퍼티

public static short DELTA_BINDING
리턴 short

MAIN_BINDING 공개적으로 정적으로 프로퍼티

public static short MAIN_BINDING
리턴 short

MORPH_CUSTOM_PARAM_ID 공개적으로 정적으로 프로퍼티

public static int MORPH_CUSTOM_PARAM_ID
리턴 int

STITCH_EAST 공개적으로 정적으로 프로퍼티

public static int STITCH_EAST
리턴 int

STITCH_EAST_SHIFT 공개적으로 정적으로 프로퍼티

public static int STITCH_EAST_SHIFT
리턴 int

STITCH_NORTH 공개적으로 정적으로 프로퍼티

public static int STITCH_NORTH
리턴 int

STITCH_NORTH_SHIFT 공개적으로 정적으로 프로퍼티

public static int STITCH_NORTH_SHIFT
리턴 int

STITCH_SOUTH 공개적으로 정적으로 프로퍼티

public static int STITCH_SOUTH
리턴 int

STITCH_SOUTH_SHIFT 공개적으로 정적으로 프로퍼티

public static int STITCH_SOUTH_SHIFT
리턴 int

STITCH_WEST 공개적으로 정적으로 프로퍼티

public static int STITCH_WEST
리턴 int

STITCH_WEST_SHIFT 공개적으로 정적으로 프로퍼티

public static int STITCH_WEST_SHIFT
리턴 int