C# 클래스 Axiom.Core.MeshManager

Handles the management of mesh resources.
상속: ResourceManager
파일 보기 프로젝트 열기: WolfgangSt/axiom 1 사용 예제들

공개 메소드들

메소드 설명
CreateBezierPatch ( string name, string group, Array controlPointBuffer, Axiom.Graphics.VertexDeclaration declaration, int width, int height, int uMaxSubdivisionLevel, int vMaxSubdivisionLevel, VisibleSide visibleSide, BufferUsage vbUsage, BufferUsage ibUsage, bool vbUseShadow, bool ibUseShadow ) : PatchMesh

Creates a Bezier patch based on an array of control vertices.

CreateBoneMesh ( string name ) : Axiom.Core.Mesh
CreateCurvedIllusionPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, float curvature, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTiles, float yTiles, Vector3 upVector ) : Axiom.Core.Mesh

CreateCurvedIllusionPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, float curvature, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTiles, float yTiles, Vector3 upVector, Axiom.MathLib.Quaternion orientation, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer ) : Axiom.Core.Mesh

CreateCurvedIllusionPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, float curvature, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTiles, float yTiles, Vector3 upVector, Axiom.MathLib.Quaternion orientation, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer, int ySegmentsToKeep ) : Axiom.Core.Mesh

CreateCurvedPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height ) : Axiom.Core.Mesh

CreateCurvedPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, Real bow, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTile, float yTile, Vector3 upVec ) : Axiom.Core.Mesh

CreateCurvedPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, Real bow, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTile, float yTile, Vector3 upVector, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer ) : Axiom.Core.Mesh

CreateManual ( string name, string group, IManualResourceLoader loader ) : Axiom.Core.Mesh

Creates a barebones Mesh object that can be used to manually define geometry later on.

CreatePlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, int xSegments, int ySegments, bool normals, int texCoordSetCount, float uTile, float vTile, Vector3 upVec ) : Axiom.Core.Mesh
CreatePlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, int xSegments, int ySegments, bool normals, int texCoordSetCount, float uTile, float vTile, Vector3 upVec, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer ) : Axiom.Core.Mesh

CreatePlane ( string name, string group, Axiom.MathLib.Plane plane, int width, int height ) : Axiom.Core.Mesh

Overloaded method.

Load ( string name, string group ) : Axiom.Core.Mesh

Load ( string name, string group, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage ) : Axiom.Core.Mesh

Load ( string name, string group, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexBufferShadowed, bool indexBufferShadowed, int priority ) : Axiom.Core.Mesh
LoadResource ( Axiom.Core.Resource resource ) : void
MeshManager ( ) : System

Internal constructor. This class cannot be instantiated externally.

ParseScript ( System stream, string groupName, string fileName ) : void
this ( System.UInt64 handle ) : Axiom.Core.Mesh
this ( string name ) : Axiom.Core.Mesh

보호된 메소드들

메소드 설명
FireProcessMaterialName ( Axiom.Core.Mesh mesh, string name ) : void
FireProcessSkeletonName ( Axiom.Core.Mesh mesh, string name ) : void
_create ( string name, ulong handle, string group, bool isManual, IManualResourceLoader loader, Axiom createParams ) : Axiom.Core.Resource
dispose ( bool disposeManagedResources ) : void

비공개 메소드들

메소드 설명
Initialize ( ) : void

Called internally to initialize this manager.

_createPrefabCube ( ) : void
_createPrefabPlane ( ) : void
_createPrefabSphere ( ) : void
_generateCurvedIllusionPlaneVertexData ( HardwareVertexBuffer vertexBuffer, int ySegments, int xSegments, float xSpace, float halfWidth, float ySpace, float halfHeight, Axiom.MathLib.Matrix4 xform, bool firstTime, bool normals, Axiom.MathLib.Quaternion orientation, float curvature, float uTiles, float vTiles, int numberOfTexCoordSets, Vector3 &min, Vector3 &max, float &maxSquaredLength ) : void
_generateCurvedPlaneVertexData ( HardwareVertexBuffer vbuf, int ySegments, int xSegments, float xSpace, float halfWidth, float ySpace, float halfHeight, Axiom.MathLib.Matrix4 transform, bool firstTime, bool normals, Axiom.MathLib.Matrix4 rotation, float curvature, int numTexCoordSets, float xTexCoord, float yTexCoord, SubMesh subMesh, Vector3 &min, Vector3 &max, float &maxSquaredLength ) : void
_generatePlaneVertexData ( HardwareVertexBuffer vbuf, int ySegments, int xSegments, float xSpace, float halfWidth, float ySpace, float halfHeight, Axiom.MathLib.Matrix4 transform, bool firstTime, bool normals, Axiom.MathLib.Matrix4 rotation, int numTexCoordSets, float xTexCoord, float yTexCoord, SubMesh subMesh, Vector3 &min, Vector3 &max, float &maxSquaredLength ) : void
_getVertices ( Vector3 &points, Axiom bone ) : void
_loadManual ( Axiom.Core.Mesh mesh, MeshBuildParams mbp ) : void
_tesselate2DMesh ( SubMesh subMesh, int width, int height, bool doubleSided, BufferUsage indexBufferUsage, bool indexShadowBuffer ) : void

Used to generate a face list based on vertices.

메소드 상세

CreateBezierPatch() 공개 메소드

Creates a Bezier patch based on an array of control vertices.
public CreateBezierPatch ( string name, string group, Array controlPointBuffer, Axiom.Graphics.VertexDeclaration declaration, int width, int height, int uMaxSubdivisionLevel, int vMaxSubdivisionLevel, VisibleSide visibleSide, BufferUsage vbUsage, BufferUsage ibUsage, bool vbUseShadow, bool ibUseShadow ) : PatchMesh
name string
group string
controlPointBuffer System.Array
declaration Axiom.Graphics.VertexDeclaration
width int
height int
uMaxSubdivisionLevel int
vMaxSubdivisionLevel int
visibleSide VisibleSide
vbUsage BufferUsage
ibUsage BufferUsage
vbUseShadow bool
ibUseShadow bool
리턴 PatchMesh

CreateBoneMesh() 공개 메소드

public CreateBoneMesh ( string name ) : Axiom.Core.Mesh
name string
리턴 Axiom.Core.Mesh

CreateCurvedIllusionPlane() 공개 메소드

public CreateCurvedIllusionPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, float curvature, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTiles, float yTiles, Vector3 upVector ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
curvature float
xSegments int
ySegments int
normals bool
texCoordSetCount int
xTiles float
yTiles float
upVector Vector3
리턴 Axiom.Core.Mesh

CreateCurvedIllusionPlane() 공개 메소드

public CreateCurvedIllusionPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, float curvature, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTiles, float yTiles, Vector3 upVector, Axiom.MathLib.Quaternion orientation, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
curvature float
xSegments int
ySegments int
normals bool
texCoordSetCount int
xTiles float
yTiles float
upVector Vector3
orientation Axiom.MathLib.Quaternion
vertexBufferUsage BufferUsage
indexBufferUsage BufferUsage
vertexShadowBuffer bool
indexShadowBuffer bool
리턴 Axiom.Core.Mesh

CreateCurvedIllusionPlane() 공개 메소드

public CreateCurvedIllusionPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, float curvature, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTiles, float yTiles, Vector3 upVector, Axiom.MathLib.Quaternion orientation, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer, int ySegmentsToKeep ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
curvature float
xSegments int
ySegments int
normals bool
texCoordSetCount int
xTiles float
yTiles float
upVector Vector3
orientation Axiom.MathLib.Quaternion
vertexBufferUsage BufferUsage
indexBufferUsage BufferUsage
vertexShadowBuffer bool
indexShadowBuffer bool
ySegmentsToKeep int
리턴 Axiom.Core.Mesh

CreateCurvedPlane() 공개 메소드

public CreateCurvedPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
리턴 Axiom.Core.Mesh

CreateCurvedPlane() 공개 메소드

public CreateCurvedPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, Real bow, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTile, float yTile, Vector3 upVec ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
bow Real
xSegments int
ySegments int
normals bool
texCoordSetCount int
xTile float
yTile float
upVec Vector3
리턴 Axiom.Core.Mesh

CreateCurvedPlane() 공개 메소드

public CreateCurvedPlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, Real bow, int xSegments, int ySegments, bool normals, int texCoordSetCount, float xTile, float yTile, Vector3 upVector, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
bow Real
xSegments int
ySegments int
normals bool
texCoordSetCount int
xTile float
yTile float
upVector Vector3
vertexBufferUsage BufferUsage
indexBufferUsage BufferUsage
vertexShadowBuffer bool
indexShadowBuffer bool
리턴 Axiom.Core.Mesh

CreateManual() 공개 메소드

Creates a barebones Mesh object that can be used to manually define geometry later on.
public CreateManual ( string name, string group, IManualResourceLoader loader ) : Axiom.Core.Mesh
name string
group string
loader IManualResourceLoader
리턴 Axiom.Core.Mesh

CreatePlane() 공개 메소드

public CreatePlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, int xSegments, int ySegments, bool normals, int texCoordSetCount, float uTile, float vTile, Vector3 upVec ) : Axiom.Core.Mesh
name string
group string
plane Axiom.MathLib.Plane
width float
height float
xSegments int
ySegments int
normals bool
texCoordSetCount int
uTile float
vTile float
upVec Vector3
리턴 Axiom.Core.Mesh

CreatePlane() 공개 메소드

public CreatePlane ( string name, string group, Axiom.MathLib.Plane plane, float width, float height, int xSegments, int ySegments, bool normals, int texCoordSetCount, float uTile, float vTile, Vector3 upVec, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexShadowBuffer, bool indexShadowBuffer ) : Axiom.Core.Mesh
name string Name of the plane mesh.
group string
plane Axiom.MathLib.Plane Plane to use for distance and orientation of the mesh.
width float Width in world coordinates.
height float Height in world coordinates.
xSegments int Number of x segments for tesselation.
ySegments int Number of y segments for tesselation.
normals bool If true, plane normals are created.
texCoordSetCount int Number of 2d texture coord sets to use.
uTile float Number of times the texture should be repeated in the u direction.
vTile float Number of times the texture should be repeated in the v direction.
upVec Vector3 The up direction of the plane.
vertexBufferUsage BufferUsage
indexBufferUsage BufferUsage
vertexShadowBuffer bool
indexShadowBuffer bool
리턴 Axiom.Core.Mesh

CreatePlane() 공개 메소드

Overloaded method.
public CreatePlane ( string name, string group, Axiom.MathLib.Plane plane, int width, int height ) : Axiom.Core.Mesh
name string Name of the plane mesh.
group string
plane Axiom.MathLib.Plane Plane to use for distance and orientation of the mesh.
width int Width in world coordinates.
height int Height in world coordinates.
리턴 Axiom.Core.Mesh

FireProcessMaterialName() 보호된 메소드

protected FireProcessMaterialName ( Axiom.Core.Mesh mesh, string name ) : void
mesh Axiom.Core.Mesh
name string
리턴 void

FireProcessSkeletonName() 보호된 메소드

protected FireProcessSkeletonName ( Axiom.Core.Mesh mesh, string name ) : void
mesh Axiom.Core.Mesh
name string
리턴 void

Load() 공개 메소드

public Load ( string name, string group ) : Axiom.Core.Mesh
name string
group string
리턴 Axiom.Core.Mesh

Load() 공개 메소드

public Load ( string name, string group, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage ) : Axiom.Core.Mesh
name string
group string
vertexBufferUsage BufferUsage
indexBufferUsage BufferUsage
리턴 Axiom.Core.Mesh

Load() 공개 메소드

public Load ( string name, string group, BufferUsage vertexBufferUsage, BufferUsage indexBufferUsage, bool vertexBufferShadowed, bool indexBufferShadowed, int priority ) : Axiom.Core.Mesh
name string
group string
vertexBufferUsage BufferUsage
indexBufferUsage BufferUsage
vertexBufferShadowed bool
indexBufferShadowed bool
priority int
리턴 Axiom.Core.Mesh

LoadResource() 공개 메소드

public LoadResource ( Axiom.Core.Resource resource ) : void
resource Axiom.Core.Resource
리턴 void

MeshManager() 공개 메소드

Internal constructor. This class cannot be instantiated externally.
public MeshManager ( ) : System
리턴 System

ParseScript() 공개 메소드

public ParseScript ( System stream, string groupName, string fileName ) : void
stream System
groupName string
fileName string
리턴 void

_create() 보호된 메소드

protected _create ( string name, ulong handle, string group, bool isManual, IManualResourceLoader loader, Axiom createParams ) : Axiom.Core.Resource
name string
handle ulong
group string
isManual bool
loader IManualResourceLoader
createParams Axiom
리턴 Axiom.Core.Resource

dispose() 보호된 메소드

protected dispose ( bool disposeManagedResources ) : void
disposeManagedResources bool
리턴 void

this() 공개 메소드

public this ( System.UInt64 handle ) : Axiom.Core.Mesh
handle System.UInt64
리턴 Axiom.Core.Mesh

this() 공개 메소드

public this ( string name ) : Axiom.Core.Mesh
name string
리턴 Axiom.Core.Mesh