Navigation
Unreal Engine C++ API Reference > Runtime > GeometryCore
Filters
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FColliderMesh | FColliderMesh is a minimal representation of an Indexed Triangle Mesh suitable to use with a TMeshAABBTree3. | |
![]() |
FColliderMeshProjectionTarget | Projection target API wrapper for an FColliderMesh | |
![]() |
FComputeTangentsOptions | Options used by TMeshTangents for tangents computation | |
![]() |
FDynamicMesh3 | FDynamicMesh3 is a dynamic triangle mesh class. | |
![]() |
FDynamicMeshAttributeChangeSet | FDynamicMeshAttributeChangeSet stores a set of UV and Normal changes for a FDynamicMesh3 | |
![]() |
FDynamicMeshAttributeSet | FDynamicMeshAttributeSet manages a set of extended attributes for a FDynamicMesh3. | |
![]() |
FDynamicMeshAttributeSetChangeTracker | FDynamicMeshAttributeSetChangeTracker constructs a well-formed set of TDynamicMeshAttributeChange objects (stored in a FDynamicMeshAttributeChangeSet). | |
![]() |
FDynamicMeshChange | FDynamicMeshChange stores a "change" in a FDynamicMesh3, which in this context means the replacement of one set of triangles with a second set, that may have different vertices/attributes. | |
![]() |
FDynamicMeshChangeTracker | FDynamicMeshChangeTracker tracks changes to a FDynamicMesh and returns a FDynamicMeshChange instance that represents this change and allows it to be reverted/reapplied. | |
![]() |
FDynamicMeshOctree3 | FDynamicMeshOctree3 is an extension of FSparseDynamicOctree3 for the triangles of a FDynamicMesh3 instance. | |
![]() |
FDynamicMeshTangents | FDynamicMeshTangents is a helper object for accessing tangents stored in the AttributeSet of a FDynamicMesh3. | |
![]() |
FDynamicMeshTriangleAttributeChange | ||
![]() |
FEdgeCollapseInfo | Information about mesh elements modified/removed by CollapseEdge() | |
![]() |
FEdgeFlipInfo | Information about the mesh elements modified by a call to FlipEdge() | |
![]() |
FEdgeSplitInfo | Information about the mesh elements created by a call to SplitEdge() | |
![]() |
FMergeEdgesInfo | Information about mesh elements modified by MergeEdges() | |
![]() |
FMeshBones | FMeshBones is a utility class for manipulating mesh bone attributes | |
![]() |
FMeshIndexMappings | FMeshIndexMappings stores a set of integer IndexMaps for a mesh This is a convenient object to have, to avoid passing around large numbers of separate maps. | |
![]() |
FMeshNormals | FMeshNormals is a utility class that can calculate and store various types of normal vectors for a FDynamicMesh. | |
![]() |
FMeshTriEdgeID | FMeshTriEdgeID identifies an edge in a triangle mesh based on the triangle ID/Index and the "edge index" 0/1/2 in the triangle. | |
![]() |
FMeshTriOrderedEdgeID | FMeshTriOrderedEdgeID identifies an oriented edge in a triangle mesh based on indices into the triangle vertices. | |
![]() |
FNonManifoldMappingSupport | The FNonManifoldMappingSupport is a light-weight class that exists to interpret and manage additional DynamicMesh data stored when the mesh was created from a potentially non-manifold source mesh. | |
![]() |
FPokeTriangleInfo | Information about mesh elements modified/created by PokeTriangle() | |
![]() |
FVertexInfo | FVertexInfo stores information about vertex attributes - position, normal, color, UV | |
![]() |
FVertexSplitInfo | Information about mesh elements modified/created by SplitVertex() | |
![]() |
TConstObjectSharedAccess | TConstObjectSharedAccess provides a way for the owner of some object (eg a Mesh) to share read-only access to that object with background threads. | |
![]() |
TDynamicAttributeBase | Base class for attributes that live on a dynamic mesh (or similar dynamic object) | |
![]() |
TDynamicAttributeChangeBase | Generic base class for change tracking of an attribute layer | |
![]() |
TDynamicAttributeSetBase | Generic base class for managing a set of registered attributes that must all be kept up to date | |
![]() |
TDynamicBoneAttributeBase | TDynamicAttributeBase is a base class for storing per-bone data. | |
![]() |
TDynamicMeshAttributeChange | TDynamicMeshAttributeChange represents a change to an attribute overlay of a FDynamicMesh3. | |
![]() |
TDynamicMeshOverlay | TDynamicMeshOverlay is an add-on to a FDynamicMesh3 that allows for per-triangle storage of an "element" (eg like a per-triangle UV or normal). | |
![]() |
TDynamicMeshScalarTriangleAttribute | TDynamicMeshScalarTriangleAttribute is an extension of TDynamicMeshTriangleAttribute for scalar-valued attributes. | |
![]() |
TDynamicMeshTriangleAttribute | TDynamicMeshTriangleAttribute is an add-on to a FDynamicMesh3 that allows for per-triangle storage of an attribute value. | |
![]() |
TDynamicMeshVectorOverlay | TDynamicMeshVectorOverlay is an convenient extension of TDynamicMeshOverlay that adds a specific N-element Vector type to the template, and adds accessor functions that convert between that N-element vector type and the N-element arrays used by TDynamicMeshOverlay. | |
![]() |
TDynamicPointSet3 | TDynamicPointSet3 implements a dynamic 3D point set, templated on real-value type (float or double). | |
![]() |
TDynamicVertexAttribute | TDynamicVertexAttribute provides per-vertex storage of an attribute value | |
![]() |
TDynamicVertexAttributeChange | ||
![]() |
TDynamicVertexSkinWeightsAttribute | Forward declarations | |
![]() |
TDynamicVertexSkinWeightsAttributeChange | ||
![]() |
TDynamicVerticesOctree3 | TDynamicVerticesOctree3 is an extension of FSparseDynamicPointOctree3 for the vertices of a FDynamicXYZ3 instance (eg FDynamicMesh3, TDynamicPointSet3, FDynamicGraph, etc) This extension does several things: 1) provides a simplified API based on vertex IDs to various Octree functions 2) tracks ModifiedBounds box of modified areasThe template expansion requires that FDynamicXYZ3 has the following API: 1) a function int MaxVertexID() that returns the maximum vertex ID/index 2) a function bool IsVertex(int) that returns true if the index is valid 3) a function FVector3d GetVertex(int index) that returns the position of a vertex 4) a function FAxisAlignedBox3d GetBounds() that returns a bounding-box of the point set | |
![]() |
TMeshTangents | TMeshTangents is a utility class that can calculate and store various types of tangent vectors for a FDynamicMesh. |
Typedefs
Enums
Type | Name | Description | |
---|---|---|---|
![]() |
UE::Geometry::EMeshComponents | Copyright Epic Games, Inc. All Rights Reserved. |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | MeshTransforms::ApplyTransform
(
FDynamicMesh3& Mesh, |
Apply given Transform to a Mesh. |
![]() |
void | MeshTransforms::ApplyTransform
(
FDynamicMesh3& Mesh, |
Apply given Transform to a Mesh. |
![]() |
void | MeshTransforms::ApplyTransformInverse
(
FDynamicMesh3& Mesh, |
Apply inverse of given Transform to a Mesh. |
![]() |
void | MeshTransforms::FrameCoordsToWorld
(
FDynamicMesh3& Mesh, |
Transform Mesh out of local coordinates of Frame |
![]() |
void | MeshTransforms::ReverseOrientationIfNeeded
(
FDynamicMesh3& Mesh, |
If applying Transform would invert Mesh w/ a negative scale, then invert Mesh's triangle orientations. |
![]() |
void | MeshTransforms::Scale
(
FDynamicMesh3& Mesh, |
Apply Scale to vertex positions of Mesh, relative to given Origin. |
![]() |
void | MeshTransforms::Translate
(
FDynamicMesh3& Mesh, |
Apply Translation to vertex positions of Mesh. Does not modify any other attributes. |
![]() |
void | MeshTransforms::WorldToFrameCoords
(
FDynamicMesh3& Mesh, |
Transform Mesh into local coordinates of Frame |
![]() |
void | UE::Geometry::CollectVertexPositions
(
const FDynamicMesh3& Mesh, |
Call SetType.Add(VertexPosition) for all valid vertex indices in for_each(Enumeration) |
![]() |
bool | UE::Geometry::CompactAttributeValues
(
const FDynamicMesh3& Mesh, |
Compact the values of an integer Triangle Attribute, ie so that the attribute values are dense in range 0..N. |
![]() |
bool | UE::Geometry::CopyVertexNormalsToOverlay
(
const FDynamicMesh3& Mesh, |
Copies vertex normals to a given overlay (clearing it before use if it has any elements). |
![]() |
bool | UE::Geometry::CopyVertexUVsToOverlay
(
const FDynamicMesh3& Mesh, |
Copies vertex UVs to a given overlay (clearing it before use if it has any elements). |
![]() |
void | Discard all debug meshes stored in the global Debug Meshes map | |
![]() |
bool | UE::Geometry::Debug::FetchDebugMesh
(
FString DebugMeshName, |
If a mesh was previously stored via StashDebugMesh with the given DebugMeshName, copy it to MeshOut, and optionally remove it from the Debug Meshes map |
![]() |
void | UE::Geometry::Debug::StashDebugMesh
(
const FDynamicMesh3& Mesh, |
Store a copy of Mesh in a global Debug Meshes TMap |
![]() |
FIndex3i | UE::Geometry::FindNextAdjacentTriangleAroundVtx
(
const FDynamicMesh3* Mesh, |
Walk around VertexID from FromTriangleID to next connected triangle if it exists, walking "away" from PrevTriangleID. |
![]() |
int32 | UE::Geometry::FindSharedEdgeInTriangles
(
const FDynamicMesh3& Mesh, |
|
![]() |
FIndex2i | UE::Geometry::FindVertexEdgesInTriangle
(
const FDynamicMesh3& Mesh, |
Find the two edges in a Triangle that are connected to a given Vertex of the triangle |
![]() |
FPointSetAdapterd | UE::Geometry::MakeBoundaryEdgeMidpointsAdapter
(
const FDynamicMesh3* Mesh |
|
![]() |
FTriangleMeshAdapterd | UE::Geometry::MakeDynamicMeshAdapter
(
const FDynamicMesh3* Mesh |
|
![]() |
FPointSetAdapterd | UE::Geometry::MakeEdgeMidpointsAdapter
(
const FDynamicMesh3* Mesh |
|
![]() |
FPointSetAdapterd | UE::Geometry::MakePointsAdapter
(
const FDynamicPointSet3d* PointSet |
|
![]() |
FTriangleMeshAdapterd | UE::Geometry::MakeTransformedDynamicMeshAdapter
(
const FDynamicMesh3* Mesh, |
|
![]() |
FPointSetAdapterd | UE::Geometry::MakeTriCentroidsAdapter
(
const FDynamicMesh3* Mesh |
|
![]() |
FPointSetAdapterd | UE::Geometry::MakeVerticesAdapter
(
const FDynamicMesh3* Mesh |
|
![]() |
bool | UE::Geometry::SplitBoundaryVertexTrianglesIntoSubsets
(
const FDynamicMesh3* Mesh, |
Split the triangle one-ring at VertexID into two triangle sets by "cutting" it with edge SplitEdgeID that is connected to VertexID. |
![]() |
bool | UE::Geometry::SplitInteriorVertexTrianglesIntoSubsets
(
const FDynamicMesh3* Mesh, |
Split the triangle one-ring at VertexID into two triangle sets by "cutting" it with two edges SplitEdgeID0 and SplitEdgeID1 that are both connected to VertexID. |
![]() |
void | UE::Geometry::TrianglesToOverlayElements
(
const OverlayType* Overlay, |
For a given list/enumeration of Triangles, and an Overlay, find all the Elements in all the Triangles. |
![]() |
void | UE::Geometry::TriangleToVertexIDs
(
const FDynamicMesh3* Mesh, |
Find list of unique vertices that are contained in one or more triangles |
![]() |
void | UE::Geometry::VertexToTriangleOneRing
(
const FDynamicMesh3* Mesh, |
Find all the triangles in all the one rings of a set of vertices |