Class Mesh

Namespace
Elegy.Common.Assets.MeshData
Assembly
Elegy.Common.dll

Represents a particular part of a model with a material assigned to it.

public class Mesh
Inheritance
Mesh
Inherited Members

Properties

BoneIndices

Vertex bone indices.

public Vector4B[] BoneIndices { get; set; }

Property Value

Vector4B[]

BoneWeights

Normalised vertex bone weights.

public Vector4[] BoneWeights { get; set; }

Property Value

Vector4[]

Color0

Vertex colours, channel 0.

public Vector4B[] Color0 { get; set; }

Property Value

Vector4B[]

Color1

Vertex colours, channel 1.

public Vector4B[] Color1 { get; set; }

Property Value

Vector4B[]

Color2

Vertex colours, channel 2.

public Vector4B[] Color2 { get; set; }

Property Value

Vector4B[]

Color3

Vertex colours, channel 3.

public Vector4B[] Color3 { get; set; }

Property Value

Vector4B[]

Indices

Vertex indices.

public uint[] Indices { get; set; }

Property Value

uint[]

IsDynamic

Whether this is a dynamic mesh.

public bool IsDynamic { get; }

Property Value

bool

MaterialName

Material name, is used by the renderer system to look for materials.

public string MaterialName { get; set; }

Property Value

string

Name

Name of the model, usually the file name + surface ID.

public string Name { get; set; }

Property Value

string

Normals

Vertex normals.

public Vector3[] Normals { get; set; }

Property Value

Vector3[]

Normals2D

Vertex normals but 2D.

public Vector2[] Normals2D { get; set; }

Property Value

Vector2[]

NumDynamicIndices

Number of dynamic indices. -1 if it's not a dynamic mesh.

public int NumDynamicIndices { get; set; }

Property Value

int

NumDynamicVertices

Number of dynamic vertices. -1 if it's not a dynamic mesh.

public int NumDynamicVertices { get; set; }

Property Value

int

Positions

Vertex positions.

public Vector3[] Positions { get; set; }

Property Value

Vector3[]

Positions2D

Vertex positions but 2D.

public Vector2[] Positions2D { get; set; }

Property Value

Vector2[]

Tangents

Vertex tangents.

public Vector4[] Tangents { get; set; }

Property Value

Vector4[]

Uv0

Vertex texture coordinates, channel 0.

public Vector2[] Uv0 { get; set; }

Property Value

Vector2[]

Uv1

Vertex texture coordinates, channel 1.

public Vector2[] Uv1 { get; set; }

Property Value

Vector2[]

Uv2

Vertex texture coordinates, channel 2.

public Vector2[] Uv2 { get; set; }

Property Value

Vector2[]

Uv3

Vertex texture coordinates, channel 3.

public Vector2[] Uv3 { get; set; }

Property Value

Vector2[]

Methods

GetVertexFlags()

Gets the vertex layout of the mesh, in form of flags.

public MeshVertexFlags GetVertexFlags()

Returns

MeshVertexFlags

Transform<TSource, TDestination>(IList<TSource>, Func<TSource, TDestination>)

Transforms a sequence of vertex data into another format, e.g. float3 into byte4.

public static TDestination[] Transform<TSource, TDestination>(IList<TSource> source, Func<TSource, TDestination> transform) where TSource : unmanaged where TDestination : unmanaged

Parameters

source IList<TSource>
transform Func<TSource, TDestination>

Returns

TDestination[]

Type Parameters

TSource
TDestination

Transform<TSource, TDestination>(IList<TSource>, TDestination[], Func<TSource, TDestination>)

Transforms a sequence of vertex data into another format, e.g. float3 into byte4.

public static void Transform<TSource, TDestination>(IList<TSource> source, TDestination[] destination, Func<TSource, TDestination> transform) where TSource : unmanaged where TDestination : unmanaged

Parameters

source IList<TSource>
destination TDestination[]
transform Func<TSource, TDestination>

Type Parameters

TSource
TDestination