182 Commits

Author SHA1 Message Date
semion piskarev
34f4548979 ModelingTools: Minor inset, extrude, and push/pull option renames, reordering, and tooltip cleanup.
#rb David.Hill
#jira UE-200615, UE-200623

[CL 31523654 by semion piskarev in 5.4 branch]
2024-02-15 12:07:19 -05:00
nickolas drake
e2ba251d30 MeshModelingToolset: Allow snapping to objects in scene when using DrawPolygonTool even when the camera is positioned such that the raycast does not hit the tool plane.
We now early out when the raycast misses the plane if snapping is disabled. If the tool plane is missed, then we use a point along the camera ray to find scene snap point (passed to FindSceneSnapPoint). A related bug is also fixed in this change in the snapping manager which caused only small sections of snappable edges to be considered. This was because the point passed to FindSceneSnapPoint was used to find a point on the 3 edges of a hit triangle, which is sensitive to camera position. Instead, we now use the raycast's impact point for the purposes of finding snap points on edges.

#rb Jimmy.Andrews, semion.piskarev
#jira UE-203169

[CL 31479814 by nickolas drake in 5.4 branch]
2024-02-14 12:20:29 -05:00
jimmy andrews
ea62a446c1 stop assuming that the group topology edge IDs are the same as the corresponding mesh edge IDs in the tri edit extrude activity
#jira UE-206059
#jira UE-206051
#rb rinat.abdrashitov

[CL 31442439 by jimmy andrews in 5.4 branch]
2024-02-13 15:11:00 -05:00
nickolas drake
b21462b11e MeshModelingToolset: Update preview when toggling Shells to Solids in PolyEdit extrude activity.
#rb lonnie.li
#jira UE-200622

[CL 31382179 by nickolas drake in 5.4 branch]
2024-02-12 10:24:15 -05:00
nickolas drake
690dc0c523 MeshModelingToolset: Add Bridge action to TriEdit
#rb semion.piskarev
#jira UE-206073

#changelist validated
#virtualized

[CL 31229972 by nickolas drake in 5.4 branch]
2024-02-06 16:18:40 -05:00
jimmy andrews
041dd30854 clamp bevel distance ranges to avoid weird results for negative, zero, and very large bevel distances
#jira UE-205943
#rb tyson.brochu

#changelist validated
#virtualized

[CL 31215371 by jimmy andrews in 5.4 branch]
2024-02-06 10:57:17 -05:00
semion piskarev
ec9f34bbad ModelingTools: Minor comment/name fixes from extrude edge review.
#rb Lonnie.Li
#jira UE-202885

[CL 31187259 by semion piskarev in 5.4 branch]
2024-02-05 15:32:28 -05:00
semion piskarev
22fda3ac2a ModelingTools: Adding icons for various modeling selection activities and PolyEd activities.
#rb Jimmy.Andrews

[CL 31186666 by semion piskarev in 5.4 branch]
2024-02-05 15:19:56 -05:00
semion piskarev
1aed518542 MeshModelingTools: Fix edge extrude single direction initialization not matching what happens if you do extrude frames first and then change over.
#rb Jimmy.Andrews
#jira UE-205509

[CL 31101134 by semion piskarev in 5.4 branch]
2024-02-01 16:04:11 -05:00
semion piskarev
9f97fec9d3 MeshModelingTools: Fix CIS static analysis warning about a place where parameters turned out to be switched.
[CL 31015938 by semion piskarev in 5.4 branch]
2024-01-30 14:25:33 -05:00
semion piskarev
1ebf5e321c MeshModelingTools: Add extrude edge activity to PolyEd and mesh selection. Kept implementating classes in private folder for this release.
#jira UE-202885

[CL 30999727 by semion piskarev in 5.4 branch]
2024-01-30 06:27:14 -05:00
katie caputo
13abd9e3f6 Modeling Tools: Allows 'Q' hotkey to return to 'select' in polygroup edit by changing hotkey for 'Lock Rotation' from 'Q' to 'Ctrl+R'
#JIRA UE-202749
#rb nickolas.drake

[CL 30852239 by katie caputo in ue5-main branch]
2024-01-24 13:11:26 -05:00
katie caputo
6c6188c40d Modeling Tools: Adding AtOrigin functionality to AddPrimitiveTool placement
#JIRA UE-202897
#rb lonnie.li

[CL 30842810 by katie caputo in ue5-main branch]
2024-01-24 10:03:07 -05:00
nickolas drake
d464d2ed09 PolyEdit: Add support for deleting polygroup edges
#rb semion.piskarev
#jira UE-202723

[CL 30660213 by nickolas drake in ue5-main branch]
2024-01-17 11:34:26 -05:00
semion piskarev
10ca42d775 ModelingTools: Remove unreachable ensure(false) that static analysis didn't like, and fix accidental duplicate LOCTEXT key.
#rb lonnie.li

[CL 30632993 by semion piskarev in ue5-main branch]
2024-01-16 09:54:37 -05:00
semion piskarev
3d4bf819a5 ModelingTools: Allow tools to customize the accept/cancel overlay for sub-activitites, and use this in PolyEd.
#rb lonnie.li
#jira UE-196706

[CL 30601293 by semion piskarev in ue5-main branch]
2024-01-12 15:01:55 -05:00
jimmy andrews
6ba33263bd Add support for copying collision shapes in the Create From Selected base tool, so we get this feature in the derived tools (e.g., the Merge tool, Vox Wrap, a few others).
Customize derived tools to exclude the collision from subtracted shapes.

#jira UE-182340
#rb lonnie.li

[CL 30359256 by jimmy andrews in ue5-main branch]
2023-12-15 15:50:51 -05:00
ryan schmidt
08a4212d9b fix various issues with mesh bevel. Boundary-condition normals are now computed before any meshing. DisplaceVertices() now tries to keep terminator vertex positions on existing mesh edges (this should be improved to stay on group edges, in most cases a group edge can be selected topologically, but for now just snapping to mesh edges to handle the simple lowpoly-boxy cases). Simplify/improve computation of section planes in ApplyProfileShape_Round() - in all cases except corners, the section plane is well-defined by the two inset edge points and the original vertex position. This allowed removal of PlanarizeArcNormals function. Also now handling flipped orientation of quad patch relative to edge vertex sequence.
Added more error handling inFQuadGridPatch::InitializeFromQuadPatch. Fixed property invalidating in PolyEdit bevel activity.

[CL 30356938 by ryan schmidt in ue5-main branch]
2023-12-15 14:57:40 -05:00
ryan schmidt
a86e132008 Add support for multi-segment bevels with optional round profile in MeshBevel. The new code path is completely separated from the previous code. Works OK but handling of valence-3 bevel corners (filled with a rounded triangle) could be improved.
Expose in Geometry Script and PolyEdit functions.

[CL 30280525 by ryan schmidt in ue5-main branch]
2023-12-12 17:55:33 -05:00
jimmy andrews
0b552fbb8f Rename the edit mesh polygons 'Done' UI button from 'Cancel' to 'Complete' because it often (but not always) accepts the action result
Add a comment noting that this is intentional, despite looking broken since the function calls PostAction(CancelCurrent)
#rb semion.piskarev
#jira UE-193338

[CL 30054469 by jimmy andrews in ue5-main branch]
2023-12-01 16:38:45 -05:00
marc audy
c98c8912ec Fix C4702 warnings
#rnx

[CL 29981814 by marc audy in ue5-main branch]
2023-11-29 01:06:23 -05:00
marc audy
763a611985 Fix C4072 warnings
#rnx

[CL 29852844 by marc audy in ue5-main branch]
2023-11-20 17:26:53 -05:00
jimmy andrews
d3b9938342 minor modeling mode tooltip cleanup -- fix a typo in edit polygroups and add requested tooltip in vox offset
#jira UE-195518
#jira UE-179311

#rb tyson.brochu

[CL 29851325 by jimmy andrews in ue5-main branch]
2023-11-20 16:39:17 -05:00
jimmy andrews
d2f9909554 Add geometry selection api overload to tools that won't affect selection, so the modeling mode can restore any previous geometry selection after use
#jira UE-189085
#rb matija.kecman

[CL 29096961 by jimmy andrews in ue5-main branch]
2023-10-25 14:36:45 -04:00
jimmy andrews
70d6c4e96f stop primitives being placed behind the camera when user hovers/clicks the sky in any of the Add Box/Sphere/Cylinder/etc tools
#rb semion.piskarev

[CL 28779942 by jimmy andrews in ue5-main branch]
2023-10-13 19:38:47 -04:00