-Added a convenience function for getting an array of bone names from a reference skeleton.
-Added MeshBones.h/cpp that contain utility functions to deal with dynamic mesh bone attributes
#rb halfdan.ingvarsson
#jira none
[CL 26233292 by rinat abdrashitov in 5.3 branch]
GeometryScript: expose above capability to Geometry Scripting
#rb none
#preflight 643fe92c090323f9a3f2a10d
[CL 25107977 by ryan schmidt in ue5-main branch]
Geometry Core: Adding Split Attribute Welder.
#jira UE-182345
#rb ryan.schmidt
#preflight 643d6fc8211b661dc4f47c6a
[CL 25072473 by david hill in ue5-main branch]
+ add a test to cover this case
#jira UE-179649
#rb david.hill, ryan.schmidt
#preflight 640f34d20e1f02786bdf510c
[CL 24621295 by jimmy andrews in ue5-main branch]
-DynamicMeshAttributeSet.cpp: Fixed a bug where we were resetting the bone attributes when matching.
-DynamicVertexSkinWeightsAttribute.h: Added a function that allows to reindex bone indices with respect to a new skeleton.
-SkeletalMeshLODModle.cpp: Handle bone attributes when FSkeletalMeshLODModel::GetMeshDescription is called.
#rb halfdan.ingvarsson
#preflight 640150b91d304a54717f810c
[CL 24523731 by rinat abdrashitov in ue5-main branch]
* Provides a mode selection for the Seam tool, switching between seam cutting mode and seam joining mode.
* Seam joining mode has an optional behavioral flag to have the path finding preferentially follow existing seams, making it easier to trace seam edges.
* DynamicMeshOverlay now supports merging elements, providing a method to merge one element to another, if they share the same parent, collapsing any references from the first element into references to the second.
* DynamicMeshUVEditor now supports removing seams from edges, providing a method to remove (via the new DynamicMeshOverlay functionality) seams from an edge collection by iteratively merging elements together.
#rb semion.piskarev
#preflight 6387e2e07b4bd3f057375770
[CL 23343534 by nathan mitchell in ue5-main branch]
- Add TMeshQueries::GetTrianglesBounds() and ::GetVerticesBounds()
- Add FMeshNormals::RecomputeOverlayTriNormals() and ::RecomputeOverlayElementNormals(). Update ComputeOverlayNormal() to take area and angle weight parameters.
- Add new FMeshTriOrderedEdgeID type, and util functions ConvertLoopToTriOrderedEdgeLoop / ConvertTriOrderedEdgeLoopToLoop. This type is similar to the TPair-tuple used by FDynamicMeshEditor::ConvertLoopToTriVidPairSequence, but formalized and providing a function to decode back into a vertex/edge ID loop
#rb matija.kecman
#preflight 638799f73377450900d2dc39
[CL 23338151 by ryan schmidt in ue5-main branch]
ModelingTools - MeshAttributePaintTool and SkinWeightsPaintTool. Use non-maniforld vertex ids when provided. fixes a crash
SplitMeshesTool - removed an unsed mesh conversion.
ModelingComponents - ModelingToolTargetUtil - request non-manifold vertex Ids on dynamic meshes when converted for tools.
DynamicMeshViaMeshDescription - request non-manifold vertex Ids on dynamic meshes when converted for tools.
ModelingObjectCreation - make sure to strip the any src vertex IDs from a dynamic mesh during object creation.
#rb Ryan.Schmidt
#preflight 63867a97f213a116eb4e9ed1
MeshConversions - MeshDescriptionToDynamicMesh - Add ability to capture non-manifold source veretx IDs in the form of a vertex attribute.
[CL 23330671 by David Hill in ue5-main branch]
Changes include
* Removed #pragma once in cpp files
* Removed dll export on templated types
* Fixed code in headers that didn't compile (probably never included anywhere
* Added casting for code going from int to float. Header was never compiled in the owning module that had warnings as errors
#preflight 637b10c6fa348e848054bd0d
#rb none (devin.doucette for a couple files)
[CL 23218414 by henrik karlsson in ue5-main branch]