Commit Graph

41 Commits

Author SHA1 Message Date
jimmy andrews
13248f61db make poly edit bevel tool refuse to start when there are no bevel-able edges in the current selection + make bevel of polygroup faces succeed when only some of the selection-bordering edges are boundary edges
#jira UE-208817
#rb David.Hill

[CL 33232945 by jimmy andrews in ue5-main branch]
2024-04-25 11:33:43 -04:00
semion piskarev
975c17f5f1 ModelingTools: Minor inset, extrude, and push/pull option renames, reordering, and tooltip cleanup.
#rb David.Hill
#jira UE-200615, UE-200623

[CL 31525899 by semion piskarev in ue5-main branch]
2024-02-15 13:16:13 -05:00
jimmy andrews
12f0f3a413 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 31445738 by jimmy andrews in ue5-main branch]
2024-02-13 16:08:13 -05:00
nickolas drake
3e2fa59703 MeshModelingToolset: Update preview when toggling Shells to Solids in PolyEdit extrude activity.
#rb lonnie.li
#jira UE-200622

[CL 31382272 by nickolas drake in ue5-main branch]
2024-02-12 10:26:19 -05:00
jimmy andrews
373b6ec9a1 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 31216850 by jimmy andrews in ue5-main branch]
2024-02-06 11:32:20 -05:00
semion piskarev
54ce86c9fc 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 31101339 by semion piskarev in ue5-main branch]
2024-02-01 16:07:16 -05:00
semion piskarev
f13fe61294 MeshModelingTools: Fix CIS static analysis warning about a place where parameters turned out to be switched.
[CL 31019705 by semion piskarev in ue5-main branch]
2024-01-30 15:54:41 -05:00
semion piskarev
401ed6ed97 MeshModelingTools: Add extrude edge activity to PolyEd and mesh selection. Kept implementating classes in private folder for this release.
#jira UE-202885

[CL 30999688 by semion piskarev in ue5-main branch]
2024-01-30 06:26:44 -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
marc audy
c98c8912ec Fix C4702 warnings
#rnx

[CL 29981814 by marc audy in ue5-main branch]
2023-11-29 01:06:23 -05:00
jimmy andrews
3c4bc91653 Make the insert edge loop tool preview edges & preview blocking-edge highlights be not depth tested, so it is easier to see where to edges go / where they fail to go
#rb tyson.brochu

[CL 27923361 by jimmy andrews in ue5-main branch]
2023-09-15 13:50:07 -04:00
semion piskarev
209ed7fd71 MeshModelingTools: Fix incorrect UVs in Push/Pull activity in PolyEd.
#rb Ryan.Schmidt
#jira UE-182078
#preflight 642da40bc6769c6082eaa379

[CL 24938793 by semion piskarev in ue5-main branch]
2023-04-05 18:48:05 -04:00
jimmy andrews
0188b696c0 Add a general-use version of the 'simplify along edges' logic from FMeshBoolean, and use it to simplify plane cuts and edge insertions
+ Update the plane cut logic to allow it to use the simplify function

#rb david.hill
#preflight 63e516ea1d3284fefe72c97a

[CL 24107250 by jimmy andrews in ue5-main branch]
2023-02-09 16:49:32 -05:00
semion piskarev
c0169a8175 MeshModelingTools: Fix ensure being fired when exiting group edge activity with an edge started.
#rb Nathan.Mitchell
#jira UE-174502
#preflight 63d9a9aab73528c8f74e682c

[CL 23984032 by semion piskarev in ue5-main branch]
2023-02-02 18:42:20 -05:00
semion piskarev
3f3dd55c2e MeshModelingTools: Fix undo in PolyEd group edge "continuous insertion" mode.
#rb Jimmy.Andrews
#jira none
#preflight 63d3e829ba4fadeef0014779

[CL 23907566 by semion piskarev in ue5-main branch]
2023-01-30 10:28:33 -05:00
semion piskarev
16b08005f7 MeshModelingTools: Fix PolyEd group edge insertion crashing if an undo transaction is received while waiting for an insertion to complete, and harden some of the state management.
#rb Tyson.Brochu, Jimmy.Andrews
#jira UE-174502
#preflight 63d3e7ba31334253e5c77aab

[CL 23889578 by semion piskarev in ue5-main branch]
2023-01-27 14:53:43 -05:00
Nickolas Drake
af83a7cea2 PolyEdit Insert Edge Activity: Optionally allow users to chain edge insertions by automatically selecting the end point of the just inserted edge as the new start point.
#jira none
#rb Semion.Piskarev
#preflight 636922a4376a9cd6a8f093c7

[CL 23013108 by Nickolas Drake in ue5-main branch]
2022-11-07 12:37:29 -05:00
henrik karlsson
4a5e13525d Fixed non-unity non-pch compile errors
#preflight skipped
#rb none

[CL 22788359 by henrik karlsson in ue5-main branch]
2022-10-26 16:22:34 -04:00
bryan sefcik
50d4fac9e0 Updated ../Engine/Plugins/... to inline gen.cpp files
Before:
3548 unity files
Total CPU Time: 47343.578125 s
Total time in Parallel executor: 494.60 seconds

After:
3445 unity files
Total CPU Time: 46044.671875 s
Total time in Parallel executor: 468.51 seconds

#jira
#preflight 63336159b20e73a098b7f24f

[CL 22218213 by bryan sefcik in ue5-main branch]
2022-09-28 01:06:15 -04:00
tyson brochu
9efcc70606 ModelingComponents/Selection:
- create a new MeshTopologySelector base class. The existing GroupTopologySelector class now inherits from it, as does a new BoundarySelector class
- likewise, create a new MeshTopologySelectionMehchanic base class and have (existing) PolygonSelectionMechanic and (new) BoundarySelectionMechanic inherit from it
- the new Boundary classes use FMeshBoundary loops to define selectable loops rather than FGroupTopology

HoleFillTool:
- change to using BoundarySelectionMechanic instead of GroupTopologySelector

Misc:
- allow FMeshBoundaryLoops to fail untangling a loop with bowties but still continue processing other loops


#jira UE-144821
#rb jimmy.andrews
#preflight 63222176e93a80888cb7d3df

[CL 22013854 by tyson brochu in ue5-main branch]
2022-09-14 15:25:19 -04:00
jimmy andrews
713456a6f0 LWC fixes for polyedit and polypath tools: Keep preview meshes centered near the origin, with translation on the transform rather than baked, because rendering stores the mesh vertices in floating point
#jira UE-158024
#jira UE-158002
#rb tyson.brochu
#preflight 631a4804ec45fbf3d741b365

[CL 21916252 by jimmy andrews in ue5-main branch]
2022-09-09 01:37:45 -04:00
Jimmy Andrews
3f0fdaddb4 When applying MeshTransforms' transform and transforminverse, generally pass bReverseOrientationIfNeeded=true
(+ for code that was passing false then manually applying the same logic, remove the extra reverse orientation logic)

#rb david.hill
#preflight 630d245fe352708d44f9e007

[CL 21706500 by Jimmy Andrews in ue5-main branch]
2022-08-30 14:40:56 -04:00
Jimmy Andrews
10153ffb90 Deprecate TTransformSRT3::Inverse() and attempt to fix usages of it and also FTransform::Inverse() in the modeling code
#rb david.hill
#preflight 627d2b99a82f3adab87fb87f

[CL 20165573 by Jimmy Andrews in ue5-main branch]
2022-05-12 12:08:26 -04:00
semion piskarev
8c3bb7ea9a MeshModelingTools: Allow user to set specific extrude distance in PolyEd.
#rb Rinat.Abdrashitov, Jimmy.Andrews
#jira none
#preflight 622b6e420a614dcb0cfb8e0d

[CL 19355551 by semion piskarev in ue5-main branch]
2022-03-11 11:01:04 -05:00