Commit Graph

36 Commits

Author SHA1 Message Date
Ryan Schmidt
34e50c3aa1 GeometryFramework: move UDynamicMesh and DynamicMeshComponent to new Runtime/Experimental/GeometryFramework module
#rb none
#rnx
#jira none
#preflight 60d16e6ca81904000135e6d4

[CL 16744295 by Ryan Schmidt in ue5-main branch]
2021-06-22 12:10:24 -04:00
Ryan Schmidt
d3c25b3b3a ModelingComponents: handle meshes without materialID attribute in MeshRenderDecomposition
#rb none
#rnx
#jira none
#fyi nathan.mitchell

[CL 16694640 by Ryan Schmidt in ue5-main branch]
2021-06-16 15:35:30 -04:00
Ryan Schmidt
1a178fa774 ModelingTools: clean up old PDI-based mesh edge rendering in Weld, Generate Polygroups, Remesh, Simplify. Replace with usage of UMeshElementsVisualizer and/or UPreviewGeometry. Also clean up includes and port to UE::ToolTarget:: APIs.
UMeshElementsVisualizer::SetMeshAccessFunction() now takes a TFunction with a TFunctionRef argument, instead of with a FDynamicMesh3* argument. This allows the UMeshElementsVisualizer to access the target mesh via the ProcessMesh()-style call on a UPreviewMesh, UDynamicMesh, etc, rather than receiving direct pointer access. See UWeldMeshEdgesTool::Setup() for example usage.

Add UMeshOpPreviewWithBackgroundCompute::ProcessCurrentMesh(), which forwards to the embedded UPreviewMesh::ProcessMesh()  (which can be used with the above)

Add UE::ToolTarget::GetMeshDescriptionCopy() to ModelingToolTargetUtil, similar to existing DynamicMesh variant that will auto-compute tangents if necessary.

#rb none
#rnx
#jira none
#preflight 60c8def586ce760001d8de51
#fyi semion.piskarev

[CL 16679472 by Ryan Schmidt in ue5-main branch]
2021-06-15 17:05:25 -04:00
Ryan Schmidt
ca511a93bd ModelingComponents: static analysis fix
#rb none
#rnx
#jira none
#preflight 60c666a65c10070001e632a4

[CL 16654965 by Ryan Schmidt in ue5-main branch]
2021-06-13 20:52:23 -04:00
Ryan Schmidt
e196c256e4 GeometryProcessing: remove forwarding headers used in GeometryCore transition, and update all affected includes.
#rb none
#rnx
#jira none
#preflight 60c52c5db9446100014da02d

[CL 16653115 by Ryan Schmidt in ue5-main branch]
2021-06-13 00:35:22 -04:00
Ryan Schmidt
46a8836354 ModelingComponents: handle case in FMeshRenderDecomposition where input mesh has no materials
#rb none
#rnx
#jira none
#preflight 60c52b0ab9446100014d9aad

[CL 16653089 by Ryan Schmidt in ue5-main branch]
2021-06-13 00:31:44 -04:00
Zousar Shaker
b6f7dafdb1 Fixing callsites for new raw pointer to TObjectPtr upgrade pass on Engine + ShooterGame.
#rb none

[CL 16640949 by Zousar Shaker in ue5-main branch]
2021-06-11 10:09:47 -04:00
danny couture
858b6baabb Add missing includes
#rb trivial
#preflight 60ae28381d78490001239969
#rnx

[CL 16466936 by danny couture in ue5-main branch]
2021-05-26 08:01:13 -04:00
semion piskarev
58d5cbd5cf MeshModelingTools: Adding current version of UV editor.
#rb Brooke.Hubert, Ryan.Schmidt
#rnx
#jira UETOOL-3108, UETOOL-3110

[CL 16078314 by semion piskarev in ue5-main branch]
2021-04-21 14:36:05 -04:00
David Hill
8024b85b42 Geometry Processing: Add Color Overlay as FVector4f to the default Dynamic Mesh Attribute Set. This should be used in place the mesh vertex color as it mirrors the wedge-instance granularity of MeshDescription used in static meshes, and the SkeletalMeshLODModel used in skeletal meshes. Also fix up the mesh conversion code to support this, as well as the undo system, and previous clients of the mesh vertex color.
#rb jimmy.andews, tyson.brochu
#preflight 607d8c95d7af9b00011d0244

[CL 16050860 by David Hill in ue5-main branch]
2021-04-19 10:47:52 -04:00
ryan schmidt
8fe0edb43c ModelingComponents: add missing thread locking in FMeshRenderDecomposition, otherwise random crashes may occur when decomposing for multiple materials
#rb trivial
#rnx
#jira none
#lockdown simon.tourangeau

#ROBOMERGE-SOURCE: CL 15960562 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v787-15839533)

[CL 15979128 by ryan schmidt in ue5-main branch]
2021-04-12 12:46:22 -04:00
Ryan Schmidt
196be0f6d1 GeometryProcessing: replace UE::Geometry::FVector3d/FVector3f with UE Core versions based on TVector<T>. FVector3<T> is now an extension of TVector<T>. Update all affected call sites.
#rb none
#rnx
#jira none

[CL 15870068 by Ryan Schmidt in ue5-main branch]
2021-03-30 21:25:22 -04:00
Ryan Schmidt
9495a8a112 GeometryProcessing: remove FTransform3f/d and FPlane3f/d from ExplicitUseGeometryMathTypes.h and clean up fallout
#rb none
#rnx
#jira none

[CL 15739090 by Ryan Schmidt in ue5-main branch]
2021-03-18 12:46:27 -04:00
Ryan Schmidt
ffe3b401cd GeometryProcessing: move all public types in GeometryProcessing plugin into UE::Geometry:: namespace, as well as some code in MeshModelingToolset. Fix fallout in Water, Paint Mode, ChaosEditor, DataPrep, Text3D, Unit Tests, internal projects.
#rb jimmy.andrews, semion.piskarev
#jira none

[CL 15661651 by Ryan Schmidt in ue5-main branch]
2021-03-09 19:33:56 -04:00
ryan schmidt
0b81f8bc56 ModelingTools: Add LODManagerTool, supports viewing different LODs in-viewport, including HiRes LOD. Action buttons to clear/reset HiRes LOD, and to remove unused materials (these are used in AutoLOD tool workflows). Minor API additions to UPreviewMesh and UPreviewGeometry. Move AutoLOD and this new Tool to a separate section of Modeling Mode toolbar
#rb none
#rnx
#jira none

#ROBOMERGE-SOURCE: CL 15526011 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15526045 by ryan schmidt in ue5-main branch]
2021-02-25 00:36:48 -04:00
ryan schmidt
f4e6981b50 ModelingComponents: Add FMeshRenderDecomposition::IsGroup() to check if group is initialized, use in ::BuildAssociations() to prevent access to un-initialized group pointers
#rb none
#rnx
#jira none

#ROBOMERGE-SOURCE: CL 15432531 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15432533 by ryan schmidt in ue5-main branch]
2021-02-17 04:59:46 -04:00
daniel wright
bdf3b979a8 Components being moved by editor tracking render velocities correctly
* Added new PrimitiveComponent flag bIsBeingMovedByEditor which is enabled by the editor when it moves an actor through the gizmos.
* Velocity rendering now draws components being moved by the editor on top of the usual Movable components
#rb Matt.Kuhlenschmidt

#ROBOMERGE-SOURCE: CL 15373844 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15373874 by daniel wright in ue5-main branch]
2021-02-09 23:05:37 -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
Ryan Schmidt
9ac62a1daf ModelingComponents:
Add UMeshWireframeComponent, this is a component that renders mesh edges  as lines, with line color/thickness varying depending on line type. Accesses mesh via an API so client does not have to handle iterations/etc (derived from LineSetComponent).
Add UMeshElementsVisualizer, subclass of UPreviewGeometry that displays mesh information (currently using UMeshWireframeComponent)
Small optimization to ULineSetComponent to avoid calling MarkRenderStateDirty() for each line when adding many lines.
#rb
#rnx

[CL 14858699 by Ryan Schmidt in ue5-main branch]
2020-12-04 16:13:39 -04:00
Marc Audy
68150e0be7 Merge UE5/Release-Engine-Staging to UE5/Main @ 14611496
This represents UE4/Main @ 14594913

[CL 14612291 by Marc Audy in ue5-main branch]
2020-10-29 13:38:15 -04:00
Marc Audy
7379fa99c5 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14229157
[CL 14233282 by Marc Audy in ue5-main branch]
2020-09-01 14:07:48 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -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
Chris Gagnon
c3f9a18841 Merge from Main in prep for Dev-Tools-Staging Copy up
#rb none

[CL 11221539 by Chris Gagnon in Dev-Tools-Staging branch]
2020-02-04 17:00:31 -05:00