Commit Graph

680 Commits

Author SHA1 Message Date
matija kecman
7a9581a005 [Backout] - CL26007087
#fyi matija.kecman
Original CL Desc
-----------------------------------------------------------------
Refactor collision geometry visualization

This change was motivated by future work to implement a minimal boilerplate system for visualizing geometry selections in tools, which will work similarly to this

#jira none
#rb ryan.schmidt

[CL 26008181 by matija kecman in ue5-main branch]
2023-06-15 06:19:30 -04:00
matija kecman
678f797fc2 Refactor collision geometry visualization
This change was motivated by future work to implement a minimal boilerplate system for visualizing geometry selections in tools, which will work similarly to this

#jira none
#rb ryan.schmidt

[CL 26007087 by matija kecman in ue5-main branch]
2023-06-15 05:26:36 -04:00
semion piskarev
c9de10f9cf MeshModelingTools: Various volume conversion fixes:
- Fix conversion sometimes making degenerate tris and firing an ensure.
- Fix volume conversion sometimes creating cracks in volumes when dealing with non-convex faces (by deleting necessary colinear verts)
- Make simplification preserve group boundaries when asked.
- Remove colinear verts along group boundaries without losing boundaries when preserving groups.
- Break up faces that have holes into convexes rather than emitting per-triangle faces.
- Make mesh to volume tool use same path for conversion as tool targets, and add controls for preserving groups and simplifying
- Revert to ear clipping if delaunay triangulation fails in converting back from volume

#rb Jimmy.Andrews
#jira UE-173272, UE-152032
#prelfight 6470ccbf5b1dc793b715d66b

[CL 26002669 by semion piskarev in ue5-main branch]
2023-06-14 23:43:43 -04:00
semion piskarev
f046f1698c MeshModelingTools: Fix incorrect edit condition in Mesh To Collision tool introduced in 25180815
#rb Ryan.Schmidt

[CL 26002100 by semion piskarev in ue5-main branch]
2023-06-14 22:24:06 -04:00
semion piskarev
00d95585b1 MeshModelingTools: Fix nonunity build errors from missing includes for Draw Spline Tool.
#rb none

[CL 25993733 by semion piskarev in ue5-main branch]
2023-06-14 16:22:00 -04:00
semion piskarev
b4529d4548 MeshModelingTools: Create Draw Spline Tool for drawing splines and spline-based blueprints.
#rb Jimmy.Andrews
#jira UE-182356

[CL 25991352 by semion piskarev in ue5-main branch]
2023-06-14 15:47:10 -04:00
benoit gadreau
03ee6012a1 Skin Paint Tool: fixes crash when selecting sockets in the skeleton tree
#rb none
[FYI] kiaran.ritchie

[CL 25973621 by benoit gadreau in ue5-main branch]
2023-06-14 06:10:04 -04:00
ryan schmidt
d8dd1860d8 CombineMeshInstances: add support for passing unique mesh LOD chains as array of MeshDescriptions, as an alternative to passing UStaticMeshes.
#rb none

[CL 25971514 by ryan schmidt in ue5-main branch]
2023-06-13 23:13:47 -04:00
nickolas drake
a97a2b32d4 ModelingToolset: Make Pattern Tool emit correct actors using a new CreateNewActor function.
Added a CreateNewActor function to EditorModelingObjectsCreationAPI which finds a factory capable of producing actors of the same type as a provided template actor to create the new actor without needing to create entirely new assets as would have been necessary with the existing functions in EditorModelingObjectsCreationAPI.

#rb lonnie.li

[CL 25963642 by nickolas drake in ue5-main branch]
2023-06-13 17:05:45 -04:00
ryan schmidt
59da8a7c59 CombineMeshInstances: Add IntersectSweptPlanarProjections mode, intersects 3 polygon-sweeps, which can produce good approximations of L-shape parts w/ holes. Added bAutoGenerateMissingUVs and bAutoGenerateTangents flags to FOptions, supported in impl. Updated settings on internal usage.
#rb none

[CL 25963273 by ryan schmidt in ue5-main branch]
2023-06-13 16:54:37 -04:00
benoit gadreau
dbe7b44d0a Fixed binding initialization
#rb none

[CL 25955275 by benoit gadreau in ue5-main branch]
2023-06-13 12:38:52 -04:00
benoit gadreau
60af494ec3 Skeleton Editing Tool: use the plane defined by the bones to compute the default secondary axis when orienting bones
#jira none
#rb kiaran.ritchie

[CL 25954874 by benoit gadreau in ue5-main branch]
2023-06-13 12:24:45 -04:00
benoit gadreau
a889f35101 Skeleton Editing Tools: the interface between the skeletal mesh editor and the tools now use a context object to get/set info from the editor
- hide bones when switching to skeleton editing mode

#jira UE-183701
#rb kiaran.ritchie

[CL 25948706 by benoit gadreau in ue5-main branch]
2023-06-13 08:29:29 -04:00
benoit gadreau
37b4ec9cfd Skeleton Editing Tool: fixed projection in orthographic views
#jira none
#rb kiaran.ritchie

[CL 25946497 by benoit gadreau in ue5-main branch]
2023-06-13 03:16:12 -04:00
ryan schmidt
44c228edbf ModelingTools: fix Fill and GroupFill modes in Vertex Paint Tool. Improve Lazy Brush Behavior (required adding an AABBTree but fixes quite broken behavior at high lazyness)
#rb none

[CL 25941816 by ryan schmidt in ue5-main branch]
2023-06-12 18:03:33 -04:00
nickolas drake
2d29cad9f7 EditPivotTool: Fix crash when multiple tool targets are backed by the same asset.
#rb lonnie.li
#jira UE-188038

[CL 25933984 by nickolas drake in ue5-main branch]
2023-06-12 15:07:28 -04:00
kiaran ritchie
90d978c48e Renaming ISkeletalMeshEditionInterface to *EditingInterface
#JIRA None
#rb trivial
#fyi benoit.gadreau

[CL 25908397 by kiaran ritchie in ue5-main branch]
2023-06-09 19:31:50 -04:00
rinat abdrashitov
347165bea8 -Added SmoothBoneWeights geometry operator that will contain a collection of algorithms for smoothing skin/bone weights.
-Refactored the SkinWeightsPaintTool to use the new operator.

#rb david.hill
#rb kiaran.ritchie
#jira none

[CL 25879825 by rinat abdrashitov in ue5-main branch]
2023-06-08 15:45:35 -04:00
kiaran ritchie
5c5fa40e8e Fixes issue with selection mode in skin paint tool after deformation occurs.
#JIRA https://jira.it.epicgames.com/browse/UE-187063
#rb halfdan.ingvarsson

[CL 25878262 by kiaran ritchie in ue5-main branch]
2023-06-08 14:54:36 -04:00
matija kecman
120e9d3371 Render Capture Baking: Fix Material generated by BakeRC tool so that it passes data validation and can be used on a static mesh in the UEFN client
#rb ryan.schmidt

[CL 25877118 by matija kecman in ue5-main branch]
2023-06-08 14:04:36 -04:00
benoit gadreau
b805fc30dd Fixed use of invalid object ptr
+ renamed Init into SetSkeletalMesh to be consistent with USkinWeightModifier

#jira UE-187420
#rb kiaran.ritchie

[CL 25847020 by benoit gadreau in ue5-main branch]
2023-06-07 11:53:47 -04:00
benoit gadreau
90a48a0897 moving skeletal mesh tools in MeshModelingToolsEditorOnlyExp for now
#jira UE-180167
#rb kiaran.ritchie

[CL 25819105 by benoit gadreau in ue5-main branch]
2023-06-06 12:28:59 -04:00
benoit gadreau
ab240467f6 Fixed crash when reparenting bones
#jira UE-186961
#rb kiaran.ritchie

[CL 25818822 by benoit gadreau in ue5-main branch]
2023-06-06 12:22:39 -04:00
ryan schmidt
068c9d68a5 CombineMeshInstances: add support for alternative to Voxel LOD, based on planar sweep.
Add ECoarseApproximationStrategy to IGeometryProcessing_CombineMeshInstances, and FOptions.CoarseLODStrategy, as well as .CoarseApproximationDetailSize  (previously was hardcoded to 10 in impelmentation). Rename 'Voxel' to 'Coarse' in the Options struct.
Improve ComputeSweptSolidApproximation in CombineMeshInstancesImpl - 'Square' offset was a chamfer, but generally we want a Miter, with Miter cut threshold set to diagonal length.
Add ComputeBestFullProjectionMesh in CombineMeshInstancesImpl, computes swept-solid approximation along all 3 axes and selects the one w/ lowest geometric deviation
BuildCombinedMesh now supports using SweptPlanarProjection instead of Voxel approximation, or trying both and selecting the one w/ lower geometric deviation.
Disabled coplanar merging and planar retriangulation when doing hidden removal of voxel LODs (was unintentionally doing this)
Update internal usage

#rb none
#preflight 64791efee319748a836e1be5

[CL 25762477 by ryan schmidt in ue5-main branch]
2023-06-02 11:23:19 -04:00
bryan sefcik
62d3f94e73 Removed public module dependencies because they aren't used by the module making them public and they create circular dependency issues.
#preflight 6478a35ec26e3b2449f1afcf
#jira

[CL 25745177 by bryan sefcik in ue5-main branch]
2023-06-01 17:53:45 -04:00