Module |
|
Header |
/Engine/Source/Runtime/RawMesh/Public/RawMesh.h |
Include |
#include "RawMesh.h" |
struct FRawMesh
Raw mesh data used to construct optimized runtime rendering streams.
A
on terminology. Information is stored at various frequencies as defined here: Face - A single polygon in the mesh. Currently all code assumes this is a triangle but conceptually any polygon would do. Corner - Each face has N corners. As all faces are currently triangles, N=3. Wedge - Properties stored for each corner of each face. Index with FaceIndex * NumCorners + CornerIndex. Vertex - Properties shared by overlapping wedges of adjacent polygons. Typically these properties relate to position. Index with VertexIndices[WedgeIndex]. Additionally, to ease in backwards compatibility all properties should use only primitive types!
Name | Description | ||
---|---|---|---|
|
FaceMaterialIndices |
Material index. Array[FaceId] = int32 |
|
|
FaceSmoothingMasks |
Smoothing mask. Array[FaceId] = uint32 |
|
|
MaterialIndexToImportIndex |
Map from material index -> original material index at import time. |
|
|
VertexPositions |
Position in local space. Array[VertexId] = float3(x,y,z) |
|
|
WedgeColors |
|
|
|
WedgeIndices |
Index of the vertex at this wedge. Array[WedgeId] = VertexId |
|
|
WedgeTangentX |
Tangent, U direction. Array[WedgeId] = float3(x,y,z) |
|
|
WedgeTangentY |
Tangent, V direction. Array[WedgeId] = float3(x,y,z) |
|
|
WedgeTangentZ |
|
|
|
WedgeTexCoords |
Texture coordinates. Array[UVId][WedgeId]=float2(u,v) |
Name | Description | ||
---|---|---|---|
|
CompactMaterialIndices() |
Compacts materials by removing any that have no associated triangles. |
|
|
Empty() |
Empties all data streams. |
|
|
GetWedgePosition ( |
Helper for getting the position of a wedge. |
|
|
IsValid() |
Returns true if the mesh contains valid information. |
|
|
IsValidOrFixable() |
Returns true if the mesh contains valid information or slightly invalid information that we can fix. |