Navigation
API > API/Plugins > API/Plugins/DynamicMesh
Filters
Classes
| Type | Name | Description | |
|---|---|---|---|
| FAverageOverlayToVertices | Compute the per-vertex values which are the weighted average of all vertex element values stored in the overlay. | ||
| FDeformableEdgePath | Given a single path initially defined by edges on a FDynamicMesh (the SurfaceMesh), this class uses an intrinsic mesh with the same vertex set to minimize the length of the path on the surface mesh. | ||
| FDisplaceMesh | |||
| FEdgePath | FEdgePath is is little more than a double link-list that exposes IDs instead of node pointers. | ||
| FExtrudeMesh | Note: FExtrudeMesh might someday be removed. | ||
| FFFDLattice | Free-form deformation lattice. | ||
| FGroupEdgeInserter | Used to insert group edges and group edge loops. | ||
| FGroupTopologyDeformer | FGroupTopologyDeformer supports deforming a Mesh based on an overlaid FGroupTopology. | ||
| FInsetMeshRegion | FInsetMeshRegion implements local inset of a mesh region. | ||
| FIntrinsicEdgeFlipMesh | FIntrinsicEdgeFlipMesh augments the base class FSimpleIntrinsicEdgeFlipMesh with the addition of a 'normal coordinate' based correspondence with the surface mesh. | ||
| FIntrinsicMesh | FIntrinsicMesh extends the FSimpleIntrinsicMesh with the addition of a 'normal coordinate' based correspondence with the surface mesh. | ||
| FIntrinsicTriangulation | Class that manages the intrinsic triangulation of a given FDynamicMesh. | ||
| FJoinMeshLoops | FJoinMeshLoops connects two open loops of a mesh with a quad-strip. | ||
| FLatticeExecutionInfo | |||
| FMeshAttributeTransfer | FMeshAttributeTransfer transfers attributes from a SourceMesh to a TargetMesh | ||
| FMeshBevel | FMeshBevel applies a "Bevel" operation to edges of a FDynamicMesh3. | ||
| FMeshConnection | A Connection stores the information needed to define a local reference direction for each vertex and triangle. | ||
| FMeshConvexHull | Calculate Convex Hull of a Mesh | ||
| FMeshGeodesicSurfaceTracer | Class that, given a starting location and direction, traces a geodesic path along a mesh. | ||
| FMeshMirror | |||
| FMeshPlaneCut | Cut the Mesh with the Plane. | ||
| FMeshProjectionHull | Calculate a Convex Hull for a Mesh by first Projecting all vertices to a plane, computing a 2D convex polygon that contains them, and then sweeping that 2D hull to create an extruded 3D volume. | ||
| FMeshRegionOperator | This class automatically extracts a submesh from a mesh, and can re-insert it after you have edited it, as long as you have not messed up the boundary | ||
| FMeshRepairOrientation | Invert triangles as needed to a consistent ~"outward" orientation | ||
| FMeshResolveTJunctions | FMeshResolveTJunctions splits edges to create matching vertices at T-Junctions in the mesh. | ||
| FMeshSurfaceDirection | |||
| FMeshTangentDirection | |||
| FMinimalHoleFiller | Construct a "minimal" fill surface for the hole. | ||
| FNormalCoordinates | Normal Coordinates as defined by "Discrete Conformal Equivalence of Polyhedral Surfaces" - Gillespi, Springborn, Crane, TOG V40 No4, 2021 This structure assumes that the surface mesh is fixed, and the intrinsic mesh shares the same vertex set as the surface mesh and is initialized with the same connectivity as the surface mesh. | ||
| FOffsetMeshRegion | FOffsetMeshRegion implements local extrusion/offset of a mesh region. | ||
| FPlanarFlipsOptimization | If both triangles on an edge are coplanar, we can arbitrarily flip the interior edge to improve triangle quality. | ||
| FPlanarHoleFiller | Fill a set of boundary loops with planar surfaces. User must provide the triangulation function. | ||
| FPNTriangles | FPNTriangles implements curved PN (Point-Normal) Triangles (Curved PN Triangles, Vlachos, 2001). | ||
| FPolygroupRemesh | PolygroupRemesh remesh only considering polygroup features (topological corners and bends on polygroup edges) This can help clean up low poly meshes that have extra vertices along straight edges e.g. after mesh Boolean operations | ||
| FSelectiveTessellate | 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. | ||
| FSignpost | Signpost Coordinates inspired by "Navigating Intrinsic Triangulations" Sharp, Soliman and Crane [2019, ACM Transactions on Graphics] This structure assumes that the surface mesh is fixed, but allows the intrinsic mesh to support operations like edge splits and triangle pokes. | ||
| FSimpleHoleFiller | Fill an EdgeLoop hole with triangles. | ||
| FSimpleIntrinsicEdgeFlipMesh | Intrinsic Meshes: | ||
| FSimpleIntrinsicMesh | FSimpleIntrinsicMesh extends FSimpleIntrinsicEdgeFlipMesh to support edge splits and triangle pokes in addition to edge flips. | ||
| FSmoothDynamicMeshAttributes | Smooth scalar data of any dimension that is stored via TDynamicMeshOverlay. | ||
| FSmoothDynamicMeshVertexSkinWeights | Subclass of TSmoothBoneWeights for dealing with smoothing of bone weights stored in the FDynamicMeshVertexSkinWeightsAttribute. | ||
| FSmoothFillOptions | Fill parameters | ||
| FSmoothHoleFiller | This fills a hole in a mesh by doing a trivial fill, then doing a remesh, then a laplacian smooth, then a second remesh. | ||
| FSurfacePoint | Location on an extrinsic (surface) mesh stored as a union. | ||
| FTangentTri2 | |||
| FTessellationPattern | An abstract class for writing tessellation patterns. | ||
| FTraceResult | |||
| FTransferBoneWeights | Transfer bone weights from one mesh (source) to another (target). | ||
| FUniformTessellate | 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. | ||
| FVertexPositionCache | Basic cache of vertex positions. | ||
| FWeldEdgeSequence | Weld a pair of group edges. | ||
| IHoleFiller | |||
| TBoneWeightsDataSource | Interface for getting the bone weights data. | ||
| TEdgeCorrespondence | TEdgeCorrespondence allows intrinsic edges to be traced across the underlying surface mesh. | ||
| TRemoveOccludedTriangles | Remove "occluded" triangles, i.e. triangles on the "inside" of the mesh(es). | ||
| TSmoothBoneWeights | Collection of algorithms for smoothing bone weights. |
Enums
| Type | Name | Description | |
|---|---|---|---|
| UE::Geometry::ELatticeInterpolation | Copyright Epic Games, Inc. All Rights Reserved. | ||
| UE::Geometry::EMeshAttributeTransferError | Copyright Epic Games, Inc. All Rights Reserved. | ||
| UE::Geometry::EMeshAttributeTransferType | Copyright Epic Games, Inc. All Rights Reserved. | ||
| UE::Geometry::EOcclusionCalculationMode | Copyright Epic Games, Inc. All Rights Reserved. | ||
| UE::Geometry::EOcclusionTriangleSampling | Copyright Epic Games, Inc. All Rights Reserved. | ||
| UE::Geometry::GeodesicSingleTriangleUtils::ETraceClassification | Classification for a trace result (i.e. for a points recorded along the path). |
Functions
| Type | Name | Description | |
|---|---|---|---|
| double | UE::Geometry::AsZeroToTwoPi
(
double AngleR |
Return AngleR in [0,2pi) range. | |
| void | UE::Geometry::ComputeArbitraryTrianglePatchUVs
(
FDynamicMesh3& Mesh, |
Create a new single UV island for the provided TriangleSet in the given Mesh/UVOverlay, by computing an ExpMap parameterization based on an automatically-detected midpoint of the triangle patch. | |
| double | UE::Geometry::ComputeAverageUVScaleRatioAlongVertexPath
(
const FDynamicMesh3& Mesh, |
Compute the total UVLength/MeshLength ratio along the given VertexPath. | |
| void | UE::Geometry::ComputeInsetLineSegmentsFromEdges
(
const FDynamicMesh3& Mesh, |
For each edge in EdgeList, compute a line segment offset from the original edge by distance InsetDistance. | |
| void | UE::Geometry::ComputeNewGroupIDsAlongEdgeLoop
(
FDynamicMesh3& Mesh, |
Compute a new set of GroupIDs along an edge loop under the assumption that the edge loop is about to be split and new geometry introduced. | |
| void | UE::Geometry::ComputeNormalsForQuadPatch
(
FDynamicMesh3& Mesh, |
Create a new Normals "island" (ie surrounded by hard edges) for the QuadPatch of the Mesh, | |
| bool | UE::Geometry::ComputeUVIslandForQuadPatch
(
FDynamicMesh3& Mesh, |
Create a new UV Island for the QuadPatch triangles of the Mesh, and then assign UVs based on the grid layout. | |
| int32 | UE::Geometry::FlipToDelaunay
(
FSimpleIntrinsicMesh& IntrinsicMesh, |
Perform edge flips on intrinsic mesh until either the MaxFlipCount is reached or the mesh is fully Delaunay | |
| int32 | UE::Geometry::FlipToDelaunay
(
FIntrinsicEdgeFlipMesh& IntrinsicMesh, |
Perform edge flips on intrinsic mesh until either the MaxFlipCount is reached or the mesh is fully Delaunay | |
| int32 | UE::Geometry::FlipToDelaunay
(
FSimpleIntrinsicEdgeFlipMesh& IntrinsicMesh, |
Perform edge flips on intrinsic mesh until either the MaxFlipCount is reached or the mesh is fully Delaunay | |
| int32 | UE::Geometry::FlipToDelaunay
(
FIntrinsicTriangulation& IntrinsicMesh, |
Perform edge flips on intrinsic mesh until either the MaxFlipCount is reached or the mesh is fully Delaunay | |
| int32 | UE::Geometry::FlipToDelaunay
(
FIntrinsicMesh& IntrinsicMesh, |
Perform edge flips on intrinsic mesh until either the MaxFlipCount is reached or the mesh is fully Delaunay | |
| bool | UE::Geometry::GeodesicSingleTriangleUtils::IsTerminated
(
const FTraceResult& Result |
||
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceFromVertex
(
const FDynamicMesh3& Mesh, |
Trace from a Vertex Crossing. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceFromVertex
(
const FDynamicMesh3& Mesh, |
Trace from a Vertex Crossing. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceFromVertex
(
const FDynamicMesh3& Mesh, |
Trace from a Vertex Crossing. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceFromVertex
(
const FDynamicMesh3& Mesh, |
Trace from a Vertex Crossing. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceNextTriangle
(
const FDynamicMesh3& Mesh, |
Trace, starting with the result of an earlier trace. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceNextTriangle
(
const FDynamicMesh3& Mesh, |
Trace, starting with the result of an earlier trace. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceTangentTriangle
(
const FTangentTri2& TangentTri2, |
Functions for tracing across a single triangle on a mesh TraceFTangentTri2 using a local coordinate system defined by aligning the first edge of the triangle with the positive x-direction and the opposing vertex with positive y-coordinate. | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceTriangleFromBaryPoint
(
const FDynamicMesh3& Mesh, |
Trace From an Edge crossing into the triangle TriID | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceTriangleFromBaryPoint
(
const FDynamicMesh3& Mesh, |
Trace From an Edge crossing into the triangle TriID | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceTriangleFromEdge
(
const FDynamicMesh3& Mesh, |
Trace From an Edge crossing into the triangle TriID | |
| FTraceResult | UE::Geometry::GeodesicSingleTriangleUtils::TraceTriangleFromEdge
(
const FDynamicMesh3& Mesh, |
Trace From an Edge crossing into the triangle TriID | |
| FVector3d | UE::Geometry::IntrinsicCorrespondenceUtils::AsR3Position
(
const FSurfacePoint& SurfacePoint, |
||
| bool | UE::Geometry::IntrinsicCorrespondenceUtils::IsEdgePoint
(
const FSurfacePoint& SurfacePoint |
||
| bool | UE::Geometry::IntrinsicCorrespondenceUtils::IsFacePoint
(
const FSurfacePoint& SurfacePoint |
||
| bool | UE::Geometry::IntrinsicCorrespondenceUtils::IsVertexPoint
(
const FSurfacePoint& SurfacePoint |
||
| bool | UE::Geometry::IntrinsicCorrespondenceUtils::VisitVertexAdjacentElements
(
const MeshType& Mesh, |
Utility to walk around a vertex (VID) visiting the adjacent edges and triangles. | |
| FVector3d | UE::Geometry::SolveInsetVertexPositionFromLinePair
(
const FVector3d& Position, |
Solve for a new inset position by finding the intersection point a pair of inset-lines (or handle parallel-lines case). | |
| void | UE::Geometry::SolveInsetVertexPositionsFromInsetLines
(
const FDynamicMesh3& Mesh, |
For each vertex in VertexIDs, compute inset position based on list of precomputed inset lines and store in VertexPositionsOut. | |
| double | UE::Geometry::SumPathLength
(
const FDeformableEdgePath& DeformableEdgePath |