Goal
Convert accepted segmentation groups into actual Ogre submeshes.
Parent epic: #859
Scope
- Add shared helper
SubMeshOps::splitByFaceGroups.
- Create one submesh per accepted part group.
- Preserve material by default; optionally assign generated part materials.
- Duplicate boundary vertices so split submeshes are independent.
- Preserve normals, UVs, vertex colors, tangents, bone weights, n-gon face cache, and UV seam bindings where applicable.
- Add a mesh-replacement undo command because current
EditMeshTopologyCommand requires unchanged submesh count.
Acceptance Criteria
Tests
- Split fixture by synthetic face labels.
- Attribute preservation test.
- Boundary vertex duplication test.
- Skinned mesh bone assignment test.
Goal
Convert accepted segmentation groups into actual Ogre submeshes.
Parent epic: #859
Scope
SubMeshOps::splitByFaceGroups.EditMeshTopologyCommandrequires unchanged submesh count.Acceptance Criteria
Body.head,Body.torso,Body.left_arm, etc.Tests