Commit Graph

20 Commits

Author SHA1 Message Date
Ryan Schmidt
050edd4706 Geometry: Expose Remesh function in Geometry Script, and add basic convergence check to queue remesher
- add FQueueRemesher::MinActiveEdgeFraction. If fraction of modified/total edges in remesh pass is below this parameter (default 1%), consider result converged.
- Expose as option in FRemeshMeshOp, and add sane defaults for all parameters of Op
- move CalculateTargetEdgeLength function from RemeshMeshTool to static function in FRemeshMeshOp, update Tool
- add Geometry Script function ApplyUniformRemesh
#rb jimmy.andrews
#preflight 62a0f1923f1e313c6ad23c21

[CL 20562425 by Ryan Schmidt in ue5-main branch]
2022-06-08 15:29:16 -04:00
Jimmy Andrews
1541b0eb2f Add progress tracking to FProgressCancel, with nested scopes and messages
Add FAsyncTaskExecuterWithProgressCancel to allow the progress to be reported back to the calling thread

Implement initial usage in Voronoi fracture, using an FSlowTask to handle the progress bar and cancel button UI

#rb semion.piskarev
#preflight 629a68d8d204bca667d2e578

[CL 20516367 by Jimmy Andrews in ue5-main branch]
2022-06-05 21:25:04 -04:00
Jimmy Andrews
b95ec506ae Make voronoi fracture run in a background thread w/ a regularly-sampled progress/cancel UI
#rb david.hill
#rb rinat.abdrashitov
#preflight 6291238b6d1aaeda58f92d18

[CL 20397644 by Jimmy Andrews in ue5-main branch]
2022-05-27 15:42:05 -04:00
tyson brochu
087f3b0d0f Remesh Tool: initial implementation of (optional) boundary constraint projection:
- Constrained edges along a boundary are allowed to collapse, and vertices are allowed to move, but they are projected back to the original boundary curve geometry
- Additionally, vertices at boundary "corners" (defined using an angle threshold criterion) are constrained to not move or be deleted


#jira UE-149616
#rb rinat.abdrashitov
#preflight
#preflight 6262dc97e87284a93cd6bd44

[CL 19867177 by tyson brochu in ue5-main branch]
2022-04-22 12:56:47 -04:00
semion piskarev
f4faae3551 MeshModelingTools: Change how HoleFillOp assigns UV's to single trianges to avoid an unnecessary connected component search for the whole mesh. Also make it work in the presence of unset UV's though this currently can't happen inside the HoleFill Tool because it passes everything through a MeshDescription conversion.
#rb Jimmy.Andrews, Tyson.Brochu
#jira UE-147181
#preflight 62602a4add47b4ad2173633f

[CL 19831940 by semion piskarev in ue5-main branch]
2022-04-20 12:00:18 -04:00
rinat abdrashitov
744e9ee8c8 Added the Spectral conformal parameterization option for unwrapping UVs.
Refactored existing LSCM/DNCP UV unwrapping since a lot of code is shared with the Spectral method.

#rb david.hill
#rb nathan.mitchell
#jira None
#preflight 62433f4de434babd8ad4ca34

[CL 19547023 by rinat abdrashitov in ue5-main branch]
2022-03-29 15:03:12 -04:00
tyson brochu
c3e5842382 Add a "prevent tiny triangles" option to Remesher. Currently the area threshold matches the threshold used when creating a cloth simulation mesh.
#rb jimmy.andrews
#preflight 623211d35932902f93551e4d

[CL 19407366 by tyson brochu in ue5-main branch]
2022-03-16 12:41:13 -04:00
semion piskarev
8f0169fb91 MeshModelingTools: CubeGrid improvements.
- Fix bugs with how the tool deals with materials.
- Make UV's always stay aligned in the same orientation.
- Make UV's be contiguous when performing multiple steps with the same selection.
- Make sides maintain same groups with repeated steps of the same selection.
- Add support for scaling UV's.
- Add support for focus hotkey.
Also change how frame is chosen when subtracting to avoid some weird flipping logic.

#rb Matija.Kecman, Lonnie.Li
#jira none
#preflight 622b58e032749f363c82087b

[CL 19353955 by semion piskarev in ue5-main branch]
2022-03-11 09:28:29 -05:00
ryan schmidt
6ad26b69f0 rename UE::Geometry::TTransform3 to TTransformSRT3, update references
#rb none
#rnx
#jira UE-139757
#preflight 61f572d9e52a8a4a910990f1

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 18784197 in //UE5/Release-5.0/... via CL 18784203 via CL 18784222
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18784226 by ryan schmidt in ue5-main branch]
2022-01-29 14:37:53 -05:00
nathan mitchell
a25fa64667 ModelingTools: Fix handling of UV Unwrap tool to correctly take into account user selection for PolyGroup layer. Additionally fixes issue for the UV Unwrap tool in the UV Editor as well as cleaning up tooltip language about the option.
#rb semion.piskarev
#rnx
#jira UE-137942
#preflight 61e53d580c34e9a5ae5f4642

#ROBOMERGE-AUTHOR: nathan.mitchell
#ROBOMERGE-SOURCE: CL 18695310 in //UE5/Release-5.0/... via CL 18695322 via CL 18695346
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18695382 by nathan mitchell in ue5-main branch]
2022-01-21 15:43:07 -05:00
semion piskarev
80f86dd481 MeshModelingTools: Fix normals not being transferred to overlays in Remesh and Simplify when discarding attributes at start. Fix CompactCopy to properly copy vertex normals/uvs.
#rb Ryan.Schmidt
#rnx
#jira UE-139241
#preflight 61e1eb164b4bd12cbee7bb0a

#ROBOMERGE-AUTHOR: semion.piskarev
#ROBOMERGE-SOURCE: CL 18629628 in //UE5/Release-5.0/... via CL 18629633 via CL 18629637
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v899-18417669)

[CL 18629639 by semion piskarev in ue5-main branch]
2022-01-16 10:42:36 -05:00
michael balzer
7834f7999a MeshModelingToolset: Cleanup AutoUV tool
#preflight 61d63f62430de36baa437636
#rb jimmy.andrews, ryan.schmidt

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 18540029 in //UE5/Release-5.0/... via CL 18540031
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18540032 by michael balzer in ue5-release-engine-test branch]
2022-01-07 00:14:44 -05:00
matija kecman
21059d3604 UV Editor: Add some analytics to UV Editor tools
#rb lonnie.li, michael.balzer
#rnx
#jira none
#preflight 61b7ce47fc5708913396b563

#ROBOMERGE-AUTHOR: matija.kecman
#ROBOMERGE-SOURCE: CL 18453391 in //UE5/Release-5.0/... via CL 18453397
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v898-18417669)

[CL 18453406 by matija kecman in ue5-release-engine-test branch]
2021-12-14 06:39:08 -05:00
michael balzer
4a4e360ab1 MeshModelingToolset: Cleanup UV Unwrap tool
#rb ryan.schmidt
#preflight 61a6d63b6c7d8a7295f405a2, 61a92f32fc3f6823e8d2bac7

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 18357442 in //UE5/Release-5.0/... via CL 18357499
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18357514 by michael balzer in ue5-release-engine-test branch]
2021-12-02 15:47:10 -05:00
michael balzer
11f5d8d279 MeshModelingToolset: Cleanup UV Projection tool
#rb jimmy.andrews
#preflight 61a833849c77d6100798fa6d

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 18356213 in //UE5/Release-5.0/... via CL 18356239
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18356268 by michael balzer in ue5-release-engine-test branch]
2021-12-02 15:04:36 -05:00
michael balzer
946b1c5d63 MeshModelingToolset: Cleanup UV Layout tool
#rb jimmy.andrews
#preflight 6196f777880616feb156f236

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 18247882 in //UE5/Release-5.0/... via CL 18247896
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18247903 by michael balzer in ue5-release-engine-test branch]
2021-11-18 20:41:17 -05:00
nathan mitchell
8b0484567a UVEditor: Cleanup how Operator Factories are referenced by tools, preventing crash bugs on garbage collection. Also adds undo transactions around tools to capture all accepted results for all assets under one undo history item.
#rb semion.piskarev
#rnx

#ROBOMERGE-AUTHOR: nathan.mitchell
#ROBOMERGE-SOURCE: CL 18210572 in //UE5/Release-5.0/... via CL 18210586
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18210595 by nathan mitchell in ue5-release-engine-test branch]
2021-11-16 14:43:51 -05:00
nathan mitchell
01a6cbd750 UVEditor: Move Unwrap tool into the UVEditor. Changes from the modeling mode version:
* Removed material override settings, since the editor can provide this functionality independently of tools.
* Removed Layout preview settings and support, since the editor visualizes the unwrap mesh already.

Known Issues:

* Editor currently doesn't handle unset UVs, causing crashes when using poly groups on meshes without poly groups
* Polygroup settings currently assume only one target. If multiple assets are loaded in the editor, polygroup settings will be removed and the default layer assumed for all loaded assets.

#rb	semion.piskarev
#rnx

#ROBOMERGE-AUTHOR: nathan.mitchell
#ROBOMERGE-SOURCE: CL 18008730 in //UE5/Release-5.0/... via CL 18008752
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18008773 by nathan mitchell in ue5-release-engine-test branch]
2021-11-01 17:23:29 -04:00
michael balzer
18526b3ec0 MeshModelingToolset: Cleanup Boolean tool
#rb jimmy.andrews
#preflight 617c9cd80451f40001ed06a7

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 17991436 in //UE5/Release-5.0/... via CL 17991437
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17991438 by michael balzer in ue5-release-engine-test branch]
2021-10-29 22:42:08 -04:00
michael balzer
a49c74b915 MeshModelingToolset: Move ModelingOperators and ModelingOperatorsEditorOnly modules out of experimental plugin
#jira UETOOL-3823
#rb lonnie.li
#preflight 617b1aea5794a500014f544a

#ROBOMERGE-AUTHOR: michael.balzer
#ROBOMERGE-SOURCE: CL 17972239 in //UE5/Release-5.0/... via CL 17972248
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17972256 by michael balzer in ue5-release-engine-test branch]
2021-10-28 19:47:45 -04:00