Navigation
API > API/Plugins > API/Plugins/DynamicMesh
Given an input mesh and a tessellation level, this operator generates a new tessellated mesh where every triangle in the input mesh is uniformly subtriangulated into (TessellationNum + 1)^2 triangles. Per-vertex normals, uvs, colors and extended per-vertex attributes are linearly interpolated to the new vertices. Per-triangle group identifiers/materials and extended triangle attributes for the new triangles are inherited from the corresponding input mesh triangles they replaced.
Note: Currently does not support interpolation of the GenericAttributes besides Skin Weights. o o
/ \ TessellationNum = 2 / \
/ \ / \
/ \ x-----x
/ \ FUniformTessellate / \ / \
/ \ -------------> / \ / \
/ \ x-----*-----x
/ \ / \ / \ / \
/ \ / \ / \ / \ o--------------o o--x--x--o
| Name | FUniformTessellate |
| Type | class |
| Header File | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Public/Operations/UniformTessellate.h |
| Include Path | #include "Operations/UniformTessellate.h" |
Syntax
class FUniformTessellate
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FUniformTessellate
(
FDynamicMesh3* OutMesh |
Tessellate the mesh inplace. | Operations/UniformTessellate.h | |
FUniformTessellate
(
const FDynamicMesh3* Mesh, |
Tessellate the mesh and write the result into another mesh. | Operations/UniformTessellate.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FUniformTessellate() |
Operations/UniformTessellate.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bComputeMappings | bool | If true, populate VertexMap, VertexEdgeMap, VertexTriangleMap. | Operations/UniformTessellate.h | |
| bUseParallel | bool | Should multi-threading be enabled. | Operations/UniformTessellate.h | |
| Progress | FProgressCancel * | Inputs Set this to be able to cancel running operation. | Operations/UniformTessellate.h | |
| ResultMesh | FDynamicMesh3 * | Input/Output The tessellated mesh. | Operations/UniformTessellate.h | |
| TessellationNum | int | Determines the number of triangles we generate. | Operations/UniformTessellate.h | |
| VertexEdgeMap | TMap< int32, FIndex2i > | Map the ID of the vertex inserted along the input mesh edge to the input mesh triangle IDs (t1,t2) that share that edge. | Operations/UniformTessellate.h | |
| VertexMap | TArray< int32 > | Output Map the vertex ID in the input mesh to the corresponding vertex ID in the output mesh. | Operations/UniformTessellate.h | |
| VertexTriangleMap | TMap< int32, int32 > | Map the ID of the vertex inserted inside the input mesh triangle to the triangle's ID. | Operations/UniformTessellate.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool Compute() |
Generate tessellated geometry. | Operations/UniformTessellate.h | |
virtual EOperationValidationResult Validate() |
Operations/UniformTessellate.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool Cancelled() |
If this returns true, abort computation. | Operations/UniformTessellate.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static int32 ExpectedNumTriangles
(
const FDynamicMesh3& Mesh, |
Operations/UniformTessellate.h | ||
static int32 ExpectedNumVertices
(
const FDynamicMesh3& Mesh, |
Operations/UniformTessellate.h |