Commit Graph

40 Commits

Author SHA1 Message Date
Ryan Schmidt
c19bc8fe27 ModelingTools: disable point highlights by default in MeshSelectionTool. Add s/d hotkeys for brush resize, similar to sculpt/grouppaint
#rb none
#rnx
#jira none

[CL 15196447 by Ryan Schmidt in ue5-main branch]
2021-01-25 21:09:02 -04:00
Ryan Schmidt
72700cc221 ModelingComponents: Add support for fast update of index buffers in decomposed buffer sets in DynamicMeshComponent/Proxy. Add support for MeshRenderDecomposition to UPreviewMesh. Add UPreviewMesh::NotifyRegionDeferredEditCompleted() functions to allow triangle subsets to be updated.
MeshSelectionTool: enable new decomposition support to improve painting performance on large meshes. Fix code that was doing repeated linear searches to remove elements from a potentially-very-large array. Make brush-ROI tri centroid point rendering optional.
#rb jimmy.andrews
#rnx
#jira none

[CL 15175542 by Ryan Schmidt in ue5-main branch]
2021-01-24 16:05:21 -04:00
Marc Audy
4c1bb11c29 Merge UE5/Release-Engine-Staging to UE5/Main @ 14548662
This represents UE4/Main @ 14525125 + cherrypicked fixes
#skipundocheck

[CL 14551026 by Marc Audy in ue5-main branch]
2020-10-22 19:19:16 -04:00
brooke hubert
e85ae49f14 The EditorToolsContext is now owned by the mode manager.
Updated Mesh Paint, geometry, arch gen, hair lab, and sample editor modes to reflect changes to the tools context ownership.

#Jira UE-96448
#rb lauren.barnes michael.daum
#fyi ryan.schmidt simon.barsky jack.greasley
#review-14189762
#review-14189796
#review-14189767
#review-14189774
#review-14189785

[CL 14247116 by brooke hubert in ue5-main branch]
2020-09-02 15:43:58 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
ryan schmidt
e7f3baf1ca Edigrate Dev-Editor updates to InteractiveToolsFramework, GeometryProcessing, MeshModelingToolset, and ModelingTools Editor Mode Plugins. Update a few files in new MeshPaint Plugin for UInteractiveTool rename of ::Tick() to ::OnTick().
#rb none
#rnx

#ROBOMERGE-SOURCE: CL 12908995 via CL 12908996 via CL 12909001
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)

[CL 12909003 by ryan schmidt in Main branch]
2020-04-18 18:42:59 -04:00
ryan schmidt
be36fdfeb2 ModelingTools: fix issues w/ bad mesh changes being created in dynamic mesh sculpting.
Problem is that during remesh passes the affected triangle set can expand (due to splits/collapses on ROI boundary) and our tracking of it is not perfect. Remesher now tells ChangeTracker before it modifies an edge, rather than Sculpt tool trying to predict set of modified triangles up front.

In theory this allows for smaller changes, because often only a subset of triangles are modified. However ChangeTracker currently only emits modified vertices as part of modified triangles. So we still need to save the full triangle ROI. Made several MeshChangeTracker functions protected for now, because they cannot be used externally due to this limitation. Updated call sites to those functions (which were likely also buggy).

#rb jimmy.andrews
#rnx
#jira none

#ROBOMERGE-SOURCE: CL 12459928 in //UE4/Release-4.25/... via CL 12459930 via CL 12459991
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v672-12450963)

[CL 12460009 by ryan schmidt in Main branch]
2020-03-26 17:20:25 -04:00
jimmy andrews
2b83d92829 use the multi-material generate mesh function when separating triangles in the mesh selection tool, to give separated mesh pieces the same materials as the source mesh. + associated cleanup
#jira UE-90972
#rb none
#rnx

#ROBOMERGE-SOURCE: CL 12358201 in //UE4/Release-4.25/... via CL 12358202
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v671-12333473)

[CL 12358207 by jimmy andrews in Main branch]
2020-03-20 22:00:43 -04:00
ryan schmidt
46af79019f ModelingTools: resolve many sculpting issues & limitations
- fix broken sculpt material that went to white in many cases, replace with diffuse shading and rim light in Emissive channel / unlit texture
- add image-based sculpt materials provided by techart, expose custom variant that allows user-defined shader image
- make flat shading optional in view settings, for relevant shaders
- reorganize properties and update tooltips to be more informative
- fix broken Falloff support and expose in property set, display in brush highlight. Make this separately exposable in BaseBrush property set since we don't need Strength.
- add viewpoint-based Sculpt and Plane brush modes
- fix brush preview location when in hover, was not respecting target surface setting
#rb none
#rnx
#jira none
[FYI] JeanSebastien.Guay

#ROBOMERGE-SOURCE: CL 12164804 in //UE4/Release-4.25/... via CL 12164806
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v661-12148976)

[CL 12164813 by ryan schmidt in Main branch]
2020-03-13 13:40:51 -04:00
ryan schmidt
10edbe72ff ModelingTools: Improve tool info messages
#rb none
#rnx
#jira none

#ROBOMERGE-SOURCE: CL 12113495 in //UE4/Release-4.25/... via CL 12113506
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v657-12064184)

[CL 12113515 by ryan schmidt in Main branch]
2020-03-10 14:00:36 -04:00
ryan schmidt
112920fcb1 Enable autocalculated tangents for most mesh editing tools. This preserves appearance when editing meshes with normal maps. However these tangents are not written back to the MeshDescription, we current assume that the build settings will result in tangents being recomputed on Accept.
#rb none
#rnx
#jira UE-84211

#ROBOMERGE-SOURCE: CL 12026998 in //UE4/Release-4.25/... via CL 12027009
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 12049347 by ryan schmidt in Main branch]
2020-03-07 10:52:46 -05:00
jimmy andrews
08c631997f make separated pieces from selection tool not persist if the tool exited by canceling
#jira UE-83365
#rb none
#rnx

#ROBOMERGE-SOURCE: CL 11452822 in //UE4/Release-4.25/...
#ROBOMERGE-BOT: RELEASE (Release-4.25 -> Release-4.25Plus) (v654-11333218)

[CL 11452823 by jimmy andrews in 4.25-Plus branch]
2020-02-14 19:26:35 -05:00
Max Chen
b4881d8bf8 Copying //UE4/Dev-Editor to Dev-Tools-Staging (//UE4/Dev-Tools-Staging) @11123875
#rb none
#jira none

[CL 11123880 by Max Chen in Dev-Tools-Staging branch]
2020-01-27 20:11:15 -05:00
JeanMichel Dignard
70d074639f Merging //UE4/Dev-Main @ 10886849 to Dev-Tools-Staging (//UE4/Dev-Tools-Staging)
#rb none
#rnx

[CL 10906274 by JeanMichel Dignard in Dev-Tools-Staging branch]
2020-01-08 13:26:18 -05:00
Marc Audy
360d078ca3 Second batch of remaining Engine copyright updates.
#rnx
#rb none

[CL 10871248 by Marc Audy in Main branch]
2019-12-27 09:26:59 -05:00
Chris Gagnon
346a4b05ea Copy up from Dev-Editor @10681378
#rb none

[CL 10837446 by Chris Gagnon in Dev-Tools-Staging branch]
2019-12-19 18:07:47 -05:00
Ryan Schmidt
c7e705f4ec ModelingTools: update Simple and Octree DynamicMeshComponent's to use the SceneProxy pointer in base PrimitiveComponent, rather than their own copy. Simple Component's FastNotifyXYZ functions now use MarkRenderDynamicDataDirty() instead of MarkRenderStateDirty(), which was deleting the Proxy. Change MeshSelectionTool to use fast color update.
#rb none
#rnx
#fyi jimmy.andrews

[CL 10499414 by Ryan Schmidt in Dev-Editor branch]
2019-12-03 14:37:05 -05:00
Jimmy Andrews
079f79cab6 make plane cut allow multiple cuts without leaving tool
to support that: adds some support for packing multiple meshes into one dynamic mesh via a triangle attribute, a meshreplacementchange, and some improvements to the plane cut algo

#rb none
#rnx

[CL 10494329 by Jimmy Andrews in Dev-Editor branch]
2019-12-03 00:44:07 -05:00
Ryan Schmidt
5886bf3011 ModelingTools: Add Select By Material option in Select Tool
#rb none
#rnx

[CL 10428921 by Ryan Schmidt in Dev-Editor branch]
2019-11-25 15:48:57 -05:00
Ryan Schmidt
f18935e442 ModelingTools: update various tools with new multi-material and override-material support - MeshSculpt, base MeshBrush, MeshInspector, MeshSelection (currently does not display materials). Material-assignment code in MeshSelectionTool (disabled)
#rb none
#rnx

[CL 10313345 by Ryan Schmidt in Dev-Editor branch]
2019-11-19 17:11:30 -05:00
Jimmy Andrews
c1242093fb fix undo bug for disconnect triangle feature
#rb none
#rnx

[CL 10271809 by Jimmy Andrews in Dev-Editor branch]
2019-11-15 18:39:47 -05:00
Jimmy Andrews
6469c3513b uvlayout tool initial version + disconnect triangles button on select tool + a lot of related support code to handle bow ties and breaking stuff apart
#rb none
#rnx

[CL 10271273 by Jimmy Andrews in Dev-Editor branch]
2019-11-15 18:03:36 -05:00
michael daum
d2bcc09821 MeshModelingTools : Flesh out interface for commiting meshes
#rb none

#rnx

[CL 10222650 by michael daum in Dev-Editor branch]
2019-11-14 15:31:53 -05:00
Ryan Schmidt
bb43e6f69e ModelingTools: add Create Group option to Selection Tool. Add ability to show PolyGroup Colors in Selection Tool. Custom TriangleColor TFunction of DMesh-backed Components now takes Mesh as parameter (to be able to look up group w/o complex captures)
#rb none
#rnx

[CL 10091508 by Ryan Schmidt in Dev-Editor branch]
2019-11-09 21:49:15 -05:00
Jimmy Andrews
6b084078c4 Flip Normals edit action in mesh selection tool
#jira UETOOL-1865
#rb none
#rnx

[CL 9824289 by Jimmy Andrews in Dev-Editor branch]
2019-10-24 17:52:21 -04:00