- add 2D version of VectorTanHalfAngle to VectorUtil.h
- add FDynamicMeshUVEditor::SetToPerVertexUVs, initializes overlay to have a single UV for each vertex
- add FQuadGridPatch::InitializeFromQuadPatch(), initializes the quad grid from external rows of quads and associated vertices
- add FQuadGridPatch::GetVertexColumn(), returns the list of vertices in a specific grid column
- add FQuadGridPatch::FindColumnIndex(), finds the index of the grid column that contains a specific Vertex ID
#rb rinat.abdrashitov
[CL 30166232 by ryan schmidt in ue5-main branch]
also do some cleanup / generalization of the utility functions and change geometry script's append simple collision function to use them.
#rb David.Hill
[CL 29763193 by jimmy andrews in ue5-main branch]
- More aggressively prune the cache of computed merge shapes after it reaches a threshold size
- By default compute a proximity graph based on actual proximity, not the full n^2 possible connections
- After finding the best of a number of possilbe merges, optionally only look for local improvements to the current best rather than doing a full search for the absolute best connection.
#rb david.hill, shaun.kime
[CL 29158488 by jimmy andrews in ue5-main branch]
* Removed old ExportToRawMesh function and CVar `landscape.Nanite.MarchingSquaresVisibility`
* Make Landscape Nanite build less noisey in the logs
* GeometryCore - Added Reserve to TPointHashGrid2 (to match TPointHashGrid3)
#jira UE-194086
#rb jonathan.bard
[CL 29025960 by don boogert in ue5-main branch]
Add a face normal clustering function that returns the vertices at corners of the clusters (vertices touching at least 3 different clusters), for use in the angle-tolerance convex hull simplification method
#rb rinat.abdrashitov
[CL 28467181 by jimmy andrews in ue5-main branch]
We now directly construct the initial voxel mesh to be the tolerance distance from the input mesh (while allowing it to follow the convex hull), and also ensure clamp the grid cell size to not be larger than half the width of the region bounding box's min dimension.
[CL 28455930 by jimmy andrews in ue5-main branch]
Use this algorithm in the polygroups generator tool, so we get more useful groups on smooth surfaces (like a cylinder)
Also add a helper to the FSizedDisjointSet class to easily get the number of groups in the set and a mapping between compact group indices and sparse group IDs
#rb david.hill
[CL 28433389 by jimmy andrews in ue5-main branch]