Commit Graph

532 Commits

Author SHA1 Message Date
steve robb
f029468598 Fixed up a lot of bool-taking container resize functions to take EAllowShrinking instead.
[CL 30729174 by steve robb in ue5-main branch]
2024-01-19 16:41:35 -05:00
halfdan ingvarsson
b692d6e175 Skeletal Mesh: Change the import storage to use FMeshDescription instead of FSkeletalMeshImportData. This includes deprecating the USkeletalMesh::LoadLODImportedData and friends, in lieu of an API more similar to the one on UStaticMesh (GetMeshDescription/CommitMeshDescription/etc).
#jira UE-166343
#rb Alexis.Matte, benoit.gadreau, john.vanderburg

[CL 30711382 by halfdan ingvarsson in ue5-main branch]
2024-01-19 00:37:06 -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
ec2b0dd6d6 fix static analysis complaint about always-true if statement in the non-editor build of SceneComponentToDynamicMesh.cpp
#rb jimmy.andrews

[CL 30366490 by jimmy andrews in ue5-main branch]
2023-12-15 20:03:56 -05:00
jimmy andrews
7b1c8818c8 Make the convert tool support a larger range of scene component sources, by switching away from tool targets to instead use a general scene component->mesh conversion function adapted from geometry script. Make the geometry script node also now use this function.
#jira UE-182348
#rb lonnie.li

[CL 30359853 by jimmy andrews in ue5-main branch]
2023-12-15 16:11:52 -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
jimmy andrews
1a4c8ce1b5 Make component collision util do needed 'Modify' calls before updating dynamic mesh simple collision shapes, to help avoid bugs where the collision shape update is not correctly captured in the undo transaction
#rb lonnie.li

[CL 30328489 by jimmy andrews in ue5-main branch]
2023-12-14 14:46:08 -05:00
benoit gadreau
8659b4c503 Selection mechanic: improve UI responsivness by proposing different notification types
- on drag: handles the rectangle change directly
    - on tick: stores a pending selection function when dragging and calls it when ticking
    - on realease: stores a pending selection function when dragging and calls it on release

#jira UE-201729
#rb semion.piskarev

[CL 30315792 by benoit gadreau in ue5-main branch]
2023-12-14 04:28:00 -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
tyson brochu
2a1b970698 Add a Remesh node for Cloth.
For the sim mesh, the node operates on the 2D representation by first remeshing the seam and boundary edges, then remeshing the entire mesh while constraining those edges. Finally it (un)projects the 2D mesh to 3D using the input 2D/3D mesh representations.

For the render mesh, it remeshes the boundaries first, then the interiors in 3D since there are no seams. (Render Mesh LOD generation is likely to be replaced with something more user-controllable in the future, this is kind of a placeholder.)

Still TODO: additional constraints for other sim needs

#jira UE-174510
#rb Alex.McAdams, kriss.gossart, rinat.abdrashitov

[CL 30272045 by tyson brochu in ue5-main branch]
2023-12-12 14:26:29 -05:00
jimmy andrews
723fd517f1 make staticmeshtooltarget and staticmeshcomponenttooltarget handle buildscale on static mesh <-> mesh description conversions, so tools using these targets will show correctly-scaled meshes
#rb David.Hill

[CL 30193994 by jimmy andrews in ue5-main branch]
2023-12-07 17:38:34 -05:00
jimmy andrews
1e48d7a222 handle build scale for static meshes in the static mesh selector
#rb David.Hill

[CL 30193571 by jimmy andrews in ue5-main branch]
2023-12-07 17:00:00 -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
jimmy andrews
0b02d04d2b add a default-enabled option to remove degenerate triangles during dynamic mesh -> volume conversion, to make volume creation more likely to create valid BSP geometry that works for collisions. This fixes the collision for the modeling mode cone and arrow primitives when they are created as blocking volumes.
#rb rinat.abdrashitov
#jira UE-201659

[CL 30047481 by jimmy andrews in ue5-main branch]
2023-12-01 13:47:26 -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
roey borsteinas
e168d21835 Exposed a new property bIsEditable on UDynamicMeshComponent to allow them to block any modifications done through EditMesh/SetMesh. Additionally, when this flag is set to false, the UDynamicMeshToolTarget is blocked from being created for the dynamic mesh component so modeling tools can't edit the mesh either.
#rb Ryan.Schmidt

[CL 29959323 by roey borsteinas in ue5-main branch]
2023-11-28 09:50:36 -05:00
jimmy andrews
81f87183bb Fix handling of external scaling of simple collision shapes across geometry script and modeling tools, to be consistent with how UE applies component transforms to the shapes while still keeping the invariants of the shapes (spheres/capsules remain spheres/capsules, etc)
#rb rinat.abdrashitov

[CL 29876309 by jimmy andrews in ue5-main branch]
2023-11-21 17:55:54 -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
nickolas drake
5b4f2d0acc PatternTool: Fixed a bug causing the tool to not emit any actors when a normal StaticMeshActor is used. Now the tool properly emits FortStaticMeshActors.
#rb Jimmy.Andrews

[CL 29815558 by nickolas drake in ue5-main branch]
2023-11-17 14:00:58 -05:00
jimmy andrews
bf3ae9cbd2 better simple collision level set visualization: add optional marching-cubes-based level set triangulation to the simple-collision->mesh utility functions and use the new marching cubes triangulation in tools + optionally in geometry script's append simple collision function.
also do some cleanup / generalization of the utility functions and change geometry script's append simple collision function to use them.

#rb David.Hill

[CL 29763193 by jimmy andrews in ue5-main branch]
2023-11-15 18:04:18 -05:00
charles bloom
108b030948 Texture preventative fixes; clarify some mip locking code and fix 64 bit issues
#rb fabian.giesen
#rnx

[CL 29759416 by charles bloom in ue5-main branch]
2023-11-15 16:30:26 -05:00