Commit Graph

11 Commits

Author SHA1 Message Date
Jimmy Andrews
88ae29c84b fix geometryprocessing tests by changing MeshAABBTree3 to have the original 'effective' default tris per leaf (of 3), rather than the original value of 4, now that the off-by-one bug in how it handles that value has been fixed.
#jira UE-132001
#rnx
#robomerge 5.0
#preflight 616e3bc6aa49f30001a0a151

[CL 17855629 by Jimmy Andrews in ue5-main branch]
2021-10-19 00:25:39 -04:00
matija kecman
df085df393 Add WriteOBJ function for FDynamicMeshAABBTree3 and ReadOBJ function useful to inline small obj files
Also do some refactoring to pass settings structs which improve readability when setting options, reduce the need to change call sites due to signature changes, and allow overloading of Read/Load functions which return some type

#rb
#rnx
#jira none
#robomerge 5.0
#preflight

[CL 17829083 by matija kecman in ue5-main branch]
2021-10-15 10:30:30 -04:00
Jimmy Andrews
3c1ea22665 manually copy CIS fix from 4.27-chaos, because file moved (add size_t cast to SparseDynamicPointOctree3 function)
#rnx
#robomerge 5.0

[CL 17804568 by Jimmy Andrews in ue5-main branch]
2021-10-13 15:42:30 -04:00
david hill
434f9bdadd Moving IntrinsicTriangulationMesh and related MeshGeodesicSurface tracer out of Geometry Core, and into the DynamicMesh plugin
#rb ryan.schmidt, tyson.brochu
#preflight 6154c3f2549cbf00019ac526


#ROBOMERGE-AUTHOR: david.hill
#ROBOMERGE-SOURCE: CL 17678078 in //UE5/Release-5.0/... via CL 17678080 via CL 17678087
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v875-17642767)

[CL 17678092 by david hill in ue5-main branch]
2021-09-30 10:52:48 -04:00
Ryan Schmidt
2c59f635da GeometryCore: replace all usage of GeometryCore FVector3<T> with TVector<T>, remove FVector3<T> and GVector4<T>
#rb none
#rnx
#jira none
#preflight 614ce33574f7e70001ea822b
#robomerge[starship] 5.0

[CL 17617027 by Ryan Schmidt in ue5-main branch]
2021-09-23 19:37:40 -04:00
lonnie li
3e4ca92862 ModelingTools: Add N-to-1 detail mesh bake tool
- Added new FindNearestHitTriangle overload with bary coords.
- Refactored BakeMeshAttributeMapsTool into common base class with new MultiMesh (N-to-1) variant.
- Extended MeshDescriptionAdapter to support UVs.
- Added new queries on IMeshSpatialWrapper for mesh attributes.

#rb ryan.schmidt
#rnx
#jira UETOOL-3395
#preflight 613fb4c3a70fa0000131ff77

[CL 17497155 by lonnie li in ue5-main branch]
2021-09-13 17:49:48 -04:00
David Hill
3dcae148dd GeometryCore: Add Embedded Path Tracing across FDynamicMesh surfaces and Intrinsic Triangulations of FDynamicMeshes. Also update Mesh Laplacian Code to generate Cotan Laplacians from Intrinsic Triangulation.
MeshGeodesicSurfaceTracer.{h,cpp}  -  Add embedded path tracing.
GeodesicSurfaceTracerTests.cpp     -  unit tests for embedded path tracing

IntrinsicTriangulationMesh.{h, cpp}  - Adds two Intrinsic Triangulation mesh types (the more sophisticaed requires embedded path tracing)
IntrinsicMeshTests.cpp               -  unit tests for Intrinsic mesh types.

MeshLaplacian.{h,cpp}                - Adds new enum types for Intrinsic Delaunay Triangulation (IDT)  Laplacians
LaplacianOperators.{h,cpp}           - Adds wrappers and allow enum switches to build IDT Laplacians if requested
LaplacianMatrixAssembly.h            - Actually construction of IDT Laplacian.
Laplacian.cpp                        - Added trivial unit test for construction of IDT Laplacian

#rb jimmy.andrews
#preflight 6138bca42d09b9000158c95a

[CL 17458853 by David Hill in ue5-main branch]
2021-09-08 11:15:35 -04:00
Ryan Schmidt
9f156b5f20 GeometryCore: Add minimal UE::Math::TVector2<T> implementation and FVector2f/2d typedefs locally in GeometryCore VectorTypes.h. Replace existing FVector2<T> with this class, in preparation for LWC conversion. FVector2 members ::Distance() and ::DistanceSquared() moved to free functions. Update all call sites and references to FVector2.
#rb jimmy.andrews
#rnx
#jira none
#preflight 612d248c423a8f00013287f2

[CL 17359821 by Ryan Schmidt in ue5-main branch]
2021-08-30 18:02:34 -04:00
Ryan Schmidt
a0cc146b60 GeometryProcessing: clean up mesh timestamps.
- remove FDynamicMesh3::Timestamp (unused), rename Shape/Topology Timestamps to Shape/TopologyChangeStamp, change to atomic<uint32>
- add FDynamicMesh3::bEnableShapeChangeStamp, default to false, to disable ShapeChange tracking. Add ::SetShapeChangeStampEnabled() and ::HasShapeChangeStampEnabled() to configure.
- replace FDynamicMesh3::UpdateTimestamps() with UpdateChangeStamps()
- add bTrackChange param to FDynamicMesh3::SetVertex(), optionally updates ShapeChangeStamp (if enabled). Default true. Remove SetVertex_NoTimeStampUpdate(), update call sites.
- add FDynamicMesh3::GetChangeStamp(), returns combination of Shape and Topology stamps as uint64
- rename TTriangleMeshAdapter::GetTimestamp() to GetChangeStamp(), update usages
- remove TPointSetAdapter::Timestamp()   (was not used in code)
- update TMeshAABBTree3 to use GetChangeStamp(), update internal checks to call IsValid() instead
- update TFastWindingTree w/ similar changes
- update calls in UVEditor, may require further updates
#rb semion.piskarev
#rnx
#jira none
#preflight 6126904c72e9eb00011434fe

[CL 17310271 by Ryan Schmidt in ue5-main branch]
2021-08-25 17:41:42 -04:00
tyson brochu
4054062d07 Parallelize expansion coefficient computation in fast winding number tree construction
#rnx
#rb ryan.schmidt

#ushell-cherrypick of 16611645 by tyson.brochu
#preflight 60ca518d9f12370001f5d847


#ROBOMERGE-OWNER: tyson.brochu
#ROBOMERGE-AUTHOR: tyson.brochu
#ROBOMERGE-SOURCE: CL 16696473
#ROBOMERGE-BOT: (v835-16672529)
#ROBOMERGE-CONFLICT from-shelf

[CL 16696702 by tyson brochu in ue5-main branch]
2021-06-16 17:25:31 -04:00
Ryan Schmidt
623e4f96fe GeometryCore: create new GeometryCore Module. Move GeometricObjects code from GeometryProcessing plugin to this new module, as well as core FDynamicMesh3 classes (attributes, aabbtree/octree, change tracking). Update module Build.cs files that reference GeometricObjects.
#rb none
#rnx
#jira none
#preflight 60a713700569f300014a064a

[CL 16415082 by Ryan Schmidt in ue5-main branch]
2021-05-21 01:04:38 -04:00