Commit Graph

93 Commits

Author SHA1 Message Date
lonnie li
c6e4d88423 GeometryCore: Add wrap tiling method support to TImageBuilder sampling.
#rb michael.balzer
#jira UE-156731
#preflight 62aa5e0af878f9423efa38de

#ROBOMERGE-AUTHOR: lonnie.li
#ROBOMERGE-SOURCE: CL 20678497 via CL 20678689 via CL 20678741
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20679836 by lonnie li in ue5-main branch]
2022-06-15 21:13:47 -04:00
rinat abdrashitov
cbec830981 Fixed the text conflict from LOCTEXT macro for namespace and key.
Fixed the wording of the PNTriangles error when the tessellator fails to validate the inputs.

#rb trivial
#rnx
#jira UE-156730
#preflight none

[CL 20670293 by rinat abdrashitov in ue5-main branch]
2022-06-15 11:11:31 -04:00
George Rolfe
ed1cb20924 GeometryScript option struct access specifiers
#jira none
#rb ryan.schmidt
#preflight 62a91fe51f6754ac09d07122

[CL 20661438 by George Rolfe in ue5-main branch]
2022-06-14 20:20:13 -04:00
david hill
cb8124268b GeometryScriptingCore: MeshBasicEditFunctions.
Fix a crash when creating a mesh from scratch and adding UVs.

#jira UE-156508
#preflight 62a7b133e019c73dbae68761

#ROBOMERGE-AUTHOR: david.hill
#ROBOMERGE-SOURCE: CL 20644771 in //UE5/Release-5.0/... via CL 20650823
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20656849 by david hill in ue5-main branch]
2022-06-14 16:36:14 -04:00
rinat abdrashitov
b057b05a3d Initial implementation of the adaptive tessellation operator with one pattern implemented.
Currently only supports the generation of the new geometry without interpolating attributes.
Added GeometryScript function for adaptive tessellation.

#rb jimmy.andrews
#jira none
#preflight 62a8bd591f6754ac09b21d10

[CL 20653109 by rinat abdrashitov in ue5-main branch]
2022-06-14 13:42:37 -04:00
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
3ac47c6f5f CIS fix static analysis warning on polypath by explicitly casting bool
#rb trivial
#preflight 628662565a69ba071e2ef796

[CL 20282034 by Jimmy Andrews in ue5-main branch]
2022-05-19 12:15:27 -04:00
Jimmy Andrews
eaf46aae50 add CreateCircle and CreateArc functions for geometry script PolyPath
#rb ryan.schmidt
#rb semion.piskarev
#preflight 62851ebb614041edb7884425

[CL 20264906 by Jimmy Andrews in ue5-main branch]
2022-05-18 14:04:28 -04:00
Jimmy Andrews
ac6d4e5e8e automatically fix mesh orientation when geometry script functions transform meshes with negative scale
#jira UE-151319
#rb semion.piskarev
#rb ryan.schmidt
#preflight 6282a2f3734d0657703f17b7

[CL 20232088 by Jimmy Andrews in ue5-main branch]
2022-05-16 17:07:25 -04:00
Jimmy Andrews
1a7928a5ba Make geometry script functions use ApplyTransformInverse and InverseTransformPosition rather than trying to invert a transform and then use it
#jira UE-151319
#rb matija.kecman
#preflight 627bb918b60dee4a43a99a2d

[CL 20140185 by Jimmy Andrews in ue5-main branch]
2022-05-11 10:51:32 -04:00
Jimmy Andrews
e64bf36163 expose min part thickness parameter in convex decomposition algorithm out to Msh2Coll tool and Geometry Script api
#preflight 6279639976015d2d65df0f45
#rb rinat.abdrashitov

[CL 20110648 by Jimmy Andrews in ue5-main branch]
2022-05-09 16:41:33 -04:00
Marc Audy
7e82aa720a Fix bug revealed by static analysis warning
#codereview Ryan.Schmidt
#jira UE-150390
#preflight

[CL 20030004 by Marc Audy in ue5-main branch]
2022-05-03 14:58:11 -04:00
Matt Peters
d64cf41728 AssetRegistry includes (Engine Plugins): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270563191629533ec2b6f6e

[CL 20017756 by Matt Peters in ue5-main branch]
2022-05-02 18:59:38 -04:00
ryan schmidt
1b808ed76d GeometryScript: fix copy-paste-o in GetVertexPosition, it is validating against Triangle IDs
#preflight  626c16f90f5f22f922360b86

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19981962 via CL 19981986 via CL 19981990
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19985897 by ryan schmidt in ue5-main branch]
2022-04-29 17:06:14 -04:00
ryan schmidt
a20c04fa0f Fix indexing bug in FStaticMeshLODResourcesToDynamicMesh::Convert. Remove unnecessary template type on TImageBuilder::SampleNearestUV
#preflight 626c00ac7272eba608712119

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19979955 via CL 19980094 via CL 19980365
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19985827 by ryan schmidt in ue5-main branch]
2022-04-29 17:04:42 -04:00
Jimmy Andrews
7a2426908e Make PolyPath FlattenTo2DOnAxis function create a flattened copy rather than modifying the passed-in path
#rb rinat.abdrashitov
#preflight 6269520e4c09420241177fe0

[CL 19939550 by Jimmy Andrews in ue5-main branch]
2022-04-27 10:33:15 -04:00
jimmy andrews
09e04bb3c9 guard against empty path for append sweep geometry script function
#jira UE-150193
#rb lonnie.li
#preflight 6267414adf6676d7e0d0573a

#ROBOMERGE-AUTHOR: jimmy.andrews
#ROBOMERGE-SOURCE: CL 19928648 in //UE5/Release-5.0/... via CL 19930604
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19932806 by jimmy andrews in ue5-main branch]
2022-04-26 20:14:37 -04:00
ryan schmidt
50acd506a8 GeometryScript: add new list utility functions for scalar lists and manipulating vector lists. Add new library of vector math functions for lists of vectors/scalars.
#preflight 626868d18150ffc93ef5d70d

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19929905 via CL 19930120 via CL 19930159
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19932786 by ryan schmidt in ue5-main branch]
2022-04-26 20:14:14 -04:00
ryan schmidt
1fa75e7ad9 GeometryScript: add SampleTexture2DAtUVPositions function that returns texture colors (nearest or bilinear sampled) at UV positions.
GeometryProcessing: add TImageBuilder::NearestSampleUV() function to simplify nearest sampling
#preflight 62682fc8430b9997ebe6a47d

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19928418 via CL 19928912 via CL 19929469
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19931478 by ryan schmidt in ue5-main branch]
2022-04-26 19:04:45 -04:00
ryan schmidt
e582bcb866 GeometryScript: new functions for extracing per-vertex mesh Normals, UVs, and Vertex Colors
#preflight 626829c8853fdb6fddc184fa

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19924500 via CL 19925529 via CL 19926308
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19929067 by ryan schmidt in ue5-main branch]
2022-04-26 17:16:48 -04:00
ryan schmidt
e7fd25f3ca GeometryScript: add new ApplyDisplaceFromPerVertexVectors to displace mesh from set of per-vertex vectors
#preflight 62681556853fdb6fddbf0d70

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19923826 via CL 19925473 via CL 19926277
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19929044 by ryan schmidt in ue5-main branch]
2022-04-26 17:15:53 -04:00
ryan schmidt
ec4aa30226 GeometryScript: add support for reading StaticMesh LODResources mesh (render mesh) in CopyMeshFromStaticMesh
#preflight 626813941638ac249e7bc474

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19923736 via CL 19925466 via CL 19926269
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19929034 by ryan schmidt in ue5-main branch]
2022-04-26 17:15:16 -04:00
ryan schmidt
d7e43b4d3b GeometryScript: handle cases where we are running game w/ editor (eg -game, Standalone Game in PIE menu, etc) in collision generation nodes. In this case WITH_EDITOR define is true but GEditor is nullptr.
#rb tyson.brochu
#jira UE-150177
#preflight 62671de00231ca6c0da1df0d

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19911666 in //UE5/Release-5.0/... via CL 19912394
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19914139 by ryan schmidt in ue5-main branch]
2022-04-25 21:31:20 -04:00
ryan schmidt
4069425095 GeometryScript: allow CopyMeshToStaticMesh function to write to meshes in /Engine/Transient, as this is where temporary StaticMesh Assets created in the Transient package will be located, and such temporary assets are used by various Engine features like datasmith import processing
#rb tyson.brochu
#jira UE-146370
#preflight 62606fe973187d30d0c43cc2

#ROBOMERGE-AUTHOR: ryan.schmidt
#ROBOMERGE-SOURCE: CL 19849971 in //UE5/Release-5.0/... via CL 19852344
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19854544 by ryan schmidt in ue5-main branch]
2022-04-21 15:43:32 -04:00
Jimmy Andrews
106e92e91f Add PolyPath functionality to Geometry Script
PolyPath is an optionally-closed polyline/polygon with 3D vertices + some utility functions and automatic conversion to/from arrays

Also add a USplineComponent->PolyPath conversion function

#rb lonnie.li
#preflight 625dbb5348670f31a626cc9f

[CL 19792613 by Jimmy Andrews in ue5-main branch]
2022-04-18 15:46:38 -04:00