C# Class Axiom.Core.MeshManager

Handles the management of mesh resources.
Inheritance: ResourceManager
Datei anzeigen Open project: WolfgangSt/axiom Class Usage Examples

Public Methods

Method Description
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

Protected Methods

Method Description
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

Private Methods

Method Description
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.

Method Details

CreateBezierPatch() public method

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
return PatchMesh

CreateBoneMesh() public method

public CreateBoneMesh ( string name ) : Axiom.Core.Mesh
name string
return Axiom.Core.Mesh

CreateCurvedIllusionPlane() public method

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
return Axiom.Core.Mesh

CreateCurvedIllusionPlane() public method

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
return Axiom.Core.Mesh

CreateCurvedIllusionPlane() public method

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
return Axiom.Core.Mesh

CreateCurvedPlane() public method

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
return Axiom.Core.Mesh

CreateCurvedPlane() public method

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
return Axiom.Core.Mesh

CreateCurvedPlane() public method

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
return Axiom.Core.Mesh

CreateManual() public method

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
return Axiom.Core.Mesh

CreatePlane() public method

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
return Axiom.Core.Mesh

CreatePlane() public method

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
return Axiom.Core.Mesh

CreatePlane() public method

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.
return Axiom.Core.Mesh

FireProcessMaterialName() protected method

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

FireProcessSkeletonName() protected method

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

Load() public method

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

Load() public method

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

Load() public method

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
return Axiom.Core.Mesh

LoadResource() public method

public LoadResource ( Axiom.Core.Resource resource ) : void
resource Axiom.Core.Resource
return void

MeshManager() public method

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

ParseScript() public method

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

_create() protected method

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
return Axiom.Core.Resource

dispose() protected method

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

this() public method

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

this() public method

public this ( string name ) : Axiom.Core.Mesh
name string
return Axiom.Core.Mesh