UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Geometry::FDynamicMeshTangents Class Reference

#include <MeshTangents.h>

Public Member Functions

GEOMETRYCORE_API FDynamicMeshTangents (const FDynamicMesh3 *MeshIn)
 
GEOMETRYCORE_API bool HasValidTangents (bool bCheckValues=false) const
 
GEOMETRYCORE_API void GetTangentFrame (int32 TriangleID, int32 TriVertexIndex, FVector3f &NormalOut, FVector3f &TangentOut, FVector3f &BitangentOut) const
 
GEOMETRYCORE_API void GetTangentVectors (int32 TriangleID, int32 TriVertexIndex, const FVector3f &Normal, FVector3f &TangentOut, FVector3f &BitangentOut) const
 
GEOMETRYCORE_API void GetTangentVectors (int32 TriangleID, int32 TriVertexIndex, FVector3f &TangentOut, FVector3f &BitangentOut) const
 

Public Attributes

const FDynamicMesh3Mesh = nullptr
 
const FDynamicMeshNormalOverlayNormals = nullptr
 
const FDynamicMeshNormalOverlayTangents = nullptr
 
const FDynamicMeshNormalOverlayBitangents = nullptr
 

Detailed Description

FDynamicMeshTangents is a helper object for accessing tangents stored in the AttributeSet of a FDynamicMesh3.

Constructor & Destructor Documentation

◆ FDynamicMeshTangents()

FDynamicMeshTangents::FDynamicMeshTangents ( const FDynamicMesh3 MeshIn)

Member Function Documentation

◆ GetTangentFrame()

void FDynamicMeshTangents::GetTangentFrame ( int32  TriangleID,
int32  TriVertexIndex,
FVector3f NormalOut,
FVector3f TangentOut,
FVector3f BitangentOut 
) const

If tangents are available in the overlays, returns them. If only Normal is available, computes orthogonal basis. Falls back to unit axes if no overlays are available.

◆ GetTangentVectors() [1/2]

void FDynamicMeshTangents::GetTangentVectors ( int32  TriangleID,
int32  TriVertexIndex,
const FVector3f Normal,
FVector3f TangentOut,
FVector3f BitangentOut 
) const

If tangents are available in the overlays, returns them. Otherwise computes orthogonal basis to Normal argument.

◆ GetTangentVectors() [2/2]

void FDynamicMeshTangents::GetTangentVectors ( int32  TriangleID,
int32  TriVertexIndex,
FVector3f TangentOut,
FVector3f BitangentOut 
) const

If tangents are available in the overlays, returns them, otherwise falls back to unit X/Y axes.

◆ HasValidTangents()

bool FDynamicMeshTangents::HasValidTangents ( bool  bCheckValues = false) const

Checks the mesh for valid tangents. When bCheckValues == true, inspects the tangents for invalid values (ex. zero, NaN).

Parameters
bCheckValuesinspect tangent values for zero/NaN
Returns
true if the mesh has valid tangents

Member Data Documentation

◆ Bitangents

const FDynamicMeshNormalOverlay* UE::Geometry::FDynamicMeshTangents::Bitangents = nullptr

◆ Mesh

const FDynamicMesh3* UE::Geometry::FDynamicMeshTangents::Mesh = nullptr

◆ Normals

const FDynamicMeshNormalOverlay* UE::Geometry::FDynamicMeshTangents::Normals = nullptr

◆ Tangents

const FDynamicMeshNormalOverlay* UE::Geometry::FDynamicMeshTangents::Tangents = nullptr

The documentation for this class was generated from the following files: