Navigation
API > API/Plugins > API/Plugins/DynamicMesh > API/Plugins/DynamicMesh/FMeshBevel
Current Bevel computation strategy is basically to fully precompute all the necessary info for the entire bevel, then "unlink" all the edges and vertices, and then stitch it all back together. Various incremental strategies were attempted, however certain cases like a two "bevel vertices" connected by a single mesh edge greatly complicate any attempt to decompose the problem into sub-parts.
The data structures below are used to track this topological information during the operation. Note that some parts of these data structures may become invalid/incorrect as the operation proceeds... POSSIBLE IMPROVEMENTS:
- compute wedges for Loop/Edge in setup? would avoid having to deal w/ possibly weird configurations introduced by unlink of corners... FBevelLoop is the accumulated data for a closed loop of mesh-edges, with no T-junctions w/ other bevel-edges. This is the easiest case as each mesh-edge of the loop expands out into a quad, with no complex vertex-polygons/etc
| Name | FBevelLoop |
| Type | struct |
| Header File | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Public/Operations/MeshBevel.h |
| Include Path | #include "Operations/MeshBevel.h" |
Syntax
struct FBevelLoop
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| InitialPositions | TArray< FVector3d > | Operations/MeshBevel.h | ||
| MeshEdges | TArray< int32 > | Operations/MeshBevel.h | ||
| MeshEdgeTris | TArray< FIndex2i > | Operations/MeshBevel.h | ||
| MeshVertices | TArray< int32 > | Initial topological information that defines what happens in unlink/displace/mesh steps | Operations/MeshBevel.h | |
| NewGroupIDs | TArray< int32 > | New geometry computed during mesh step | Operations/MeshBevel.h | |
| NewMeshEdges | TArray< int32 > | Operations/MeshBevel.h | ||
| NewMeshVertices | TArray< int32 > | New mesh topology computed during unlink step | Operations/MeshBevel.h | |
| NewPositions0 | TArray< FVector3d > | Buffers for new vertex positions computed during displace step | Operations/MeshBevel.h | |
| NewPositions1 | TArray< FVector3d > | Operations/MeshBevel.h | ||
| NormalsA | TArray< FVector3d > | Operations/MeshBevel.h | ||
| NormalsB | TArray< FVector3d > | Operations/MeshBevel.h | ||
| StripQuadPatch | FQuadGridPatch | Operations/MeshBevel.h | ||
| StripQuads | TArray< FIndex2i > | Operations/MeshBevel.h |