Commit Graph

269 Commits

Author SHA1 Message Date
Devin Doucette
32c049c3f5 Removed some includes of Function.h in Core
#preflight 6435cf83127980724b0f16b9
#rnx

[CL 25006462 by Devin Doucette in ue5-main branch]
2023-04-12 10:05:50 -04:00
jimmy andrews
66cd067174 fix EdgeLoop.cpp calling FindEdgeFromTri with arguments in the incorrect order
#preflight 643209a07536ac6b78385552
#rb trivial

[CL 24978657 by jimmy andrews in ue5-main branch]
2023-04-10 12:08:21 -04:00
david hill
56153993ad Geometry Scripting : Geodesic Functions, add ability to trace a "straight" line on a mesh surface.
#preflight 642dbd7d4d26bcd1eb1bf94b
#rb Jimmy.Andrews

[CL 24956789 by david hill in ue5-main branch]
2023-04-06 17:02:35 -04:00
Steve Robb
5b8c9537f7 Made FMeshBakerDynamicMeshSampler explicitly non-copyable to prevent a bunch of deprecation warnings about FMeshBakerDynamicMeshSampler::DetailNormalMap from their implicit copy constructors.
Made FSceneCapturePhotoSetSampler explicitly non-copyable to prevent its special member functions being DLL-exported.

#rb none
#jira none
#preflight none

[CL 24890436 by Steve Robb in ue5-main branch]
2023-04-03 06:14:42 -04:00
matija kecman
440465a45e Fix speckles in border regions when creating textures using BakeTX tool
#jira UE-169350
#preflight 6422dd7f710ec8400fb9b138
#rb lonnie.li

[CL 24820937 by matija kecman in ue5-main branch]
2023-03-28 12:24:50 -04:00
ryan schmidt
44449e4712 GeometryProcessing: fix issue in MeshSimplification where explicitly-constrained vertices could result in collapses ignoring geometric constraint
#rb jimmy.andrews
#preflight 6422f338a86ae7cbcca71459

[CL 24820917 by ryan schmidt in ue5-main branch]
2023-03-28 12:24:01 -04:00
ryan schmidt
3880554a59 ModelingMode: preliminary support for selection transform visualization for Volumes and Static Meshes, and other minor improvements.
Add IGeometrySelectionTransformer::PreviewRender() API, for rendering info during selection transforms. Currently being called by  UGeometrySelectionManager::DebugRender() for active transforms.
FBasicDynamicMeshSelectionTransformer implements PreviewRender, draws selected mesh edges (tris as edges) and vertices, as well as affected edge ROI.
FDynamicMeshPolygroupTransformer overrides this behavior and draws polygroup edges/verts and edge ROI

FStaticMeshSelector and FVolumeSelector now create FDynamicMeshPolygroupTransformer for polygroup selections

FBasicDynamicMeshSelectionTransformer::bEnableSelectionTransformDrawing flag controls whether this edge drawing is enabled. Disabled on DynamicMeshComponent, enabled on StaticMesh and Volume.

Add Normals recomputation during tri and polygroup transforms in FBasicDynamicMeshSelectionTransformer and FDynamicMeshPolygroupTransformer

Add FGroupTopologyDeformer::EnumerateROIEdges() util function to support above

#rb none
#preflight 641cd27bc44ce895fc62f724

[CL 24780655 by ryan schmidt in ue5-main branch]
2023-03-24 12:08:43 -04:00
ryan schmidt
7ce93d296f GeometryProcessing: Handle the case where appending a triangle fails in FDynamicMeshEditor::SplitMesh(). This conceivably should never be possible, but it was observed in the wild due to a broken input FDynamicMesh3, and it's straightforward to try to handle here.
#rb jimmy.andrews
#preflight 640a295d70639dfc9462b68a

[CL 24766610 by ryan schmidt in ue5-main branch]
2023-03-23 15:19:12 -04:00
matija kecman
144f7387ab Fix texture filter kernels used in Baking Tools
#rb lonnie.li
#jira UE-179574
#preflight 64197546bb1320be4103db9d

[CL 24730282 by matija kecman in ue5-main branch]
2023-03-21 08:03:20 -04:00
Steve Robb
c341d7fc22 Added [[nodiscard]] to relevant TUniquePtr functions.
Fixed up misuses.

#rb devin.doucette
#jira none
#preflight 6413707f345ab08524938eec

[CL 24686373 by Steve Robb in ue5-main branch]
2023-03-17 07:06:23 -04:00
jimmy andrews
4d92d0a2cc fix invalid mesh state caused by not merging some neighboring edges in FDynamicMesh3's EdgeMerge, when mesh has bowties
+ add a test to cover this case

#jira UE-179649
#rb david.hill, ryan.schmidt
#preflight 640f34d20e1f02786bdf510c

[CL 24621295 by jimmy andrews in ue5-main branch]
2023-03-13 16:46:20 -04:00
rinat abdrashitov
5eef4d8a3c Fixed a static analysis error.
#rb trivial
#rnx
#preflight none

[CL 24577986 by rinat abdrashitov in ue5-main branch]
2023-03-09 12:23:38 -05:00
rinat abdrashitov
6d13803f37 -TransferBoneWeights function now uses bone attributes to re-index the skin weight bone indices when transferring between different skeletons.
-Refactored Chaos cloth transfer tool to use the new TransferBoneWeights functionality.

#rb halfdan.ingvarsson
#rb tyson.brochu
#jira none
#preflight 6408eb888c0039bbf765cd0a

[CL 24565884 by rinat abdrashitov in ue5-main branch]
2023-03-08 15:22:23 -05:00
rinat abdrashitov
a3fd902926 -DynamicMeshEditor.cpp: Handle bone data when appending two meshes and use it to reindex the the combined skinning weights.
-DynamicMeshAttributeSet.cpp:  Fixed a bug where we were resetting the bone attributes when matching.
-DynamicVertexSkinWeightsAttribute.h: Added a function that allows to reindex bone indices with respect to a new skeleton.
-SkeletalMeshLODModle.cpp: Handle bone attributes when FSkeletalMeshLODModel::GetMeshDescription is called.

#rb halfdan.ingvarsson
#preflight 640150b91d304a54717f810c

[CL 24523731 by rinat abdrashitov in ue5-main branch]
2023-03-06 11:22:59 -05:00
matija kecman
a5329ddfbb Fix computation of edge collapse lerp parameter to fix (for example) artefacts in the UV layer when remeshing the stairs primitive
#jira UE-141937
#preflight 64008a1bc63aaf1e13565ace
#rb ryan.schmidt,david.hill

[CL 24499685 by matija kecman in ue5-main branch]
2023-03-03 11:21:38 -05:00
semion piskarev
dabb78fb4c MeshModelingTools: Fix crashes in smoothing code on non-compacted meshes.
#rb Jimmy.Andrews
#jira none
#preflight 63ffca83ef1b24bf94c001a7

[CL 24480770 by semion piskarev in ue5-main branch]
2023-03-02 08:49:54 -05:00
tyson brochu
0a9de87960 Hole Fill Tool:
- change the smoothing weight scheme to IDT Cotangent
- re-check for mesh seams to constrain between iterations of remeshing

#rb jimmy.andrews
#preflight 63ffa7cc30633435f83e9200

[CL 24474295 by tyson brochu in ue5-main branch]
2023-03-01 19:19:34 -05:00
rinat abdrashitov
b98febe1fd Remove checkSlow(false) when encountering a numerical issue since it's valid for those cases to be reached and we return the Numerical Failure flag.
Otherwise, this also causes geometry processing unit tests to fail when testing for numerical failures where invalid matrices are supplied.


#rb trivial
#preflight 63fe7a5cdd78dd50f626fbd1
#rnx

[CL 24455832 by rinat abdrashitov in ue5-main branch]
2023-02-28 20:02:02 -05:00
ryan schmidt
c49fc562ad CombineMeshInstance: add support for combining simple collision and simple box-merging strategy to combine collision shapes.
GeometryCore: Make TAxisAlignedBox3::DistanceSquared const (should have been). Add TQuaternion * scalar and operator+ functions. Add TTransformSRT3::GetScale3D for API compatibility with engine FTransform
Add FSimpleShapeSet3d::Append() variant that takes a FTransformSequence3d
#rb rinat.abdrashitov
#preflight 63fe7971437ce3e7f3b51c8a

[CL 24454963 by ryan schmidt in ue5-main branch]
2023-02-28 19:00:45 -05:00
jimmy andrews
8c1fc919a2 Add PolyGroupID option to the Bake Textures and Bake Vertex Colors tools
#rb lonnie.li
#preflight 63fe754eef1b24bf9431ef91

[CL 24454581 by jimmy andrews in ue5-main branch]
2023-02-28 18:39:53 -05:00
jimmy andrews
f63cdc13af Update FLocalPlanarSimplify to support simplification along straight creases in a mesh, where the sides of the crease may optionally belong to different PolyGroups
Add an edge simplification operation to the PolyEdit tool

#rb semion.piskarev
#preflight 63ee9a0f3c1eb56f055442ac

[CL 24276322 by jimmy andrews in ue5-main branch]
2023-02-16 21:55:32 -05:00
tyson brochu
51ea46ee6d BakeVtx: fix per-channel baking of curvature/ambient occlusion
#rb lonnie.li
#preflight 63ee76da81646f1f24f10dc2

[CL 24268890 by tyson brochu in ue5-main branch]
2023-02-16 16:39:22 -05:00
nathan mitchell
f0dee58acc ModelingTools: Updated the Simplify tool's inherited properties to conditionally disable the PreventNormalFlips and PreventTinyTriangles (depending on the algorithm used). This also enables support for the PreventTinyTriangles and PreventNormalFlips under certain conditions, the latter of which had been passed into the underlying operation but never used before.
#rb Jimmy.Andrews
#jira UE-170246
#preflight 63eaa2b7956709374a58ea7d

[CL 24200206 by nathan mitchell in ue5-main branch]
2023-02-13 21:22:23 -05:00
jimmy andrews
0188b696c0 Add a general-use version of the 'simplify along edges' logic from FMeshBoolean, and use it to simplify plane cuts and edge insertions
+ Update the plane cut logic to allow it to use the simplify function

#rb david.hill
#preflight 63e516ea1d3284fefe72c97a

[CL 24107250 by jimmy andrews in ue5-main branch]
2023-02-09 16:49:32 -05:00
jonathan bard
6e7a97825e Fixed common typo (verticies->vertices)
#rb trivial
#skipci
#rnx

[CL 24061364 by jonathan bard in ue5-main branch]
2023-02-07 17:42:45 -05:00