Navigation
API > API/Plugins > API/Plugins/DynamicMesh
Given an input mesh and a tessellation pattern, this operator generates a new tessellated mesh where the triangles affected are subtriangulated according to the rules specified by the pattern. 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.
Currently does not support interpolation of the GenericAttributes besides Skin Weights.
| Name | FSelectiveTessellate |
| Type | class |
| Header File | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Public/Operations/SelectiveTessellate.h |
| Include Path | #include "Operations/SelectiveTessellate.h" |
Syntax
class FSelectiveTessellate
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FSelectiveTessellate
(
FDynamicMesh3* OutMesh |
Tessellate the mesh inplace. | Operations/SelectiveTessellate.h | |
FSelectiveTessellate
(
const FDynamicMesh3* Mesh, |
Tessellate the mesh and write the result into another mesh. | Operations/SelectiveTessellate.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FSelectiveTessellate() |
Operations/SelectiveTessellate.h |
Structs
| Name | Remarks |
|---|---|
| FTessellationInformation | Output Stores any additional tessellation information that was requested by the caller. |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bUseParallel | bool | Should tessellation be multi-threaded. | Operations/SelectiveTessellate.h | |
| Pattern | FTessellationPattern * | Tessellation pattern determines how we tessellate edges and triangles. | Operations/SelectiveTessellate.h | |
| Progress | FProgressCancel * | Inputs Set this to be able to cancel running operation. |
currently not implemented | Operations/SelectiveTessellate.h | |
| ResultMesh | FDynamicMesh3 * | Input/Output The tessellated mesh. | Operations/SelectiveTessellate.h | |
| TessInfo | FTessellationInformation | Operations/SelectiveTessellate.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool Compute() |
Generate tessellated geometry. | Operations/SelectiveTessellate.h | |
void SetPattern
(
FTessellationPattern* InPattern |
Operations/SelectiveTessellate.h | ||
virtual EOperationValidationResult Validate() |
Operations/SelectiveTessellate.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool Cancelled() |
Operations/SelectiveTessellate.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TUniquePtr< FTessellationPattern > CreateConcentricRingsPatternFromMaterial
(
const FDynamicMesh3* InMesh, |
Tessellate only triangles that belong to a given material (FDynamicMeshMaterialAttribute). | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsPatternFromPolyGroup
(
const FDynamicMesh3* InMesh, |
Tessellate only triangles that belong to a given polygroup id within the polygroup layer attribute (FDynamicMeshPolygroupAttribute) specified by its name. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsPatternFromSelectionAndMaterial
(
const FDynamicMesh3* InMesh, |
Tessellate only triangles that are selected AND which belong to a given material (FDynamicMeshMaterialAttribute). | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsPatternFromTriangleGroup
(
const FDynamicMesh3* InMesh, |
Tessellate only triangles that belong to a given triangle group id. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsTessellationPattern
(
const FDynamicMesh3* InMesh, |
Tessellate only selected triangles such that the edge and inner tessellation levels of those triangles are set to InTessellationLevel. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsTessellationPattern
(
const FDynamicMesh3* InMesh, |
Helper methods for setting up built-in tessellation patterns. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsTessellationPattern
(
const TFunctionRef< int(const int EdgeID)> InEdgeFunc, |
InEdgeFunc and InTriFunc functions will be evaluated on all edges and triangles respectively to determine their desired tessellation levels. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateConcentricRingsTessellationPattern
(
const FDynamicMesh3* InMesh, |
Tessellate the whole mesh such that all the edge and inner tessellation levels are equal to InTessellationLevel. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateInnerUnifromTessellationPattern
(
const FDynamicMesh3* InMesh, |
Pattern where the inner area is tessellated using the uniform loop style subdivision. | Operations/SelectiveTessellate.h | |
static TUniquePtr< FTessellationPattern > CreateUniformTessellationPattern
(
const FDynamicMesh3* InMesh, |
Pattern where the whole triangle is tessellated using the loop style subdivision. | Operations/SelectiveTessellate.h |