Navigation
API > API/Runtime > API/Runtime/GeometryCore
Description
Add a strip of offset geometry along mesh boundary loops (as computed by ComputeBoundaryLoops above).
Walks each boundary edge and, for each of its two endpoints, calls GetOrCreateOffsetVertFn to get boundary/offset vertex pairs, then calls AddTriFn twice to add a two-triangle quad extending from the boundary edge.
| Name | UE::Geometry::MeshBoundaries::ExtrudeBoundaryLoopEdges |
| Type | function |
| Header File | /Engine/Source/Runtime/GeometryCore/Public/MeshAdapter/MeshBoundaries.h |
| Include Path | #include "MeshAdapter/MeshBoundaries.h" |
namespace UE
{
namespace Geometry
{
namespace MeshBoundaries
{
template<typename MeshType>
void UE::Geometry::MeshBoundaries::ExtrudeBoundaryLoopEdges
(
MeshType & Mesh,
TConstArrayView< int32 > PackedBoundaryVertLoops,
TConstArrayView< int32 > PackedBoundaryTriLoops,
TFunctionRef < FBoundaryOffsetVert &)> GetOrCreateOffsetVertFn,
TFunctionRef < void &Tri, int32 SourceTID)> AddTriFn
)
}
}
}
Parameters
| Name | Remarks |
|---|---|
| Mesh | The mesh to extend with offset geometry |
| PackedBoundaryVertLoops | The boundary loops packed as [NumVertsInLoop0, LoopVID0, LoopVID1, ... LoopVIDN, NumVertsInLoop1, etc] |
| PackedBoundaryTriLoops | The boundary loops packed as [NumTrisInLoop0, LoopTri0, LoopTri1, ... LoopTriN, NumTrisInLoop1, etc]. Tris are ordered s.t. LoopTri0 has boundary edge (LoopVID0, LoopVID1). |
| GetOrCreateOffsetVertFn | Called per boundary-edge-endpoint, returning the boundary vertex and its offset pair. Should add the offset vertices (or find already-added ones) as needed. |
| AddTriFn | Function to add a new triangle to the mesh; Called per emitted skirt triangle with the source TID of the driving boundary edge. |