Commit Graph

368 Commits

Author SHA1 Message Date
marc audy
399bcf9971 Disable PVS warning V758
Silence V570 false positives for bit field assignments
Silence various other PVS warnings
#rnx

[CL 29706746 by marc audy in ue5-main branch]
2023-11-14 00:29:43 -05:00
jimmy andrews
eb2eeaf4e2 Make group self-loop edges get frame normals by plane fit, rather than picking the normal off an arbitrary triangle
#jira UE-179036
#rb matija.kecman

[CL 29328278 by jimmy andrews in ue5-main branch]
2023-11-01 15:20:24 -04:00
jimmy andrews
5242b95c81 add an angle-based metric for controlling sphere approximation acceptance, and clarify that the existing radial tolerance is vs the best distance possible for an edge of that length rather than the actual distance to the sphere surface. The angle tolerance gives an intuitive control for how coarse a tessellation could be accepted as a sphere.
Set a default value of 72 degrees max angle, so that e.g. cone volumes aren't recognized as spheres.

#rb matija.kecman

[CL 29322771 by jimmy andrews in ue5-main branch]
2023-11-01 13:07:51 -04:00
steve robb
3b6462b7e7 Fixed TArrays of C arrays.
#rb devin.doucette

[CL 29127238 by steve robb in ue5-main branch]
2023-10-26 05:10:20 -04:00
jimmy andrews
255c215278 Make group topology choose an average edge position instead of a midpoint when the edge is a self-loop
#jira UE-194590
#rb matija.kecman

[CL 29025981 by jimmy andrews in ue5-main branch]
2023-10-23 21:07:20 -04:00
semion piskarev
352fd18a4d MeshModelingTools: Fix group edges not being properly scalable (only the endpoints moved properly before).
#rb Jimmy.Andrews
#jira UE-197963

[CL 28778866 by semion piskarev in ue5-main branch]
2023-10-13 19:15:11 -04:00
jimmy andrews
77b35bc5d2 Make more collision geometry types support Min Thickness in the Mesh to Collision tool + Make the tool disable the slider for shapes that don't support it (Convex Decomp and Level Sets)
Add Min Thickness support to the Mesh Convex Hull class

#jira UE-197623
#rb david.hill

[CL 28717587 by jimmy andrews in ue5-main branch]
2023-10-12 13:34:51 -04:00
jimmy andrews
deb924201c Stop MeshRegionGraph's small region merging algorithm from repeatedly merging regions that have already grown larger than the minimum region size.
Fixes an issue where the Generate PolyGroups algorithm would randomly create very large, oddly-shaped regions in cases where the settings would normally generate many single-triangle regions.

#rb rinat.abdrashitov

[CL 28488198 by jimmy andrews in ue5-main branch]
2023-10-04 22:36:38 -04:00
jimmy andrews
edc21b808e Add a normal-based clustering algorithm which groups connected triangle groups based on the current average normal of the group.
Use this algorithm in the polygroups generator tool, so we get more useful groups on smooth surfaces (like a cylinder)

Also add a helper to the FSizedDisjointSet class to easily get the number of groups in the set and a mapping between compact group indices and sparse group IDs

#rb david.hill

[CL 28433389 by jimmy andrews in ue5-main branch]
2023-10-03 17:20:18 -04:00
tyson brochu
df3dfe3be5 A few mesh derivatives with respect to individual vertex positions
#rb jimmy.andrews
#jira UE-195851

[CL 28000493 by tyson brochu in ue5-main branch]
2023-09-19 12:45:56 -04:00
jimmy andrews
762d32878c make 'mesh to collision' tool's box detection algorithm look for 6 shared planes rather than 6 shared triangle normal directions + make it early-out if it finds more than 6. Fixes staircases being detected as boxes.
#jira UE-183642
#rb tyson.brochu

[CL 27839819 by jimmy andrews in ue5-main branch]
2023-09-13 13:50:38 -04:00
matija kecman
84bdab0304 Support Geometry Selection in the Tangents tool and fix some bugs
#jira UE-181650
#rb jimmy.andrews

[CL 27584315 by matija kecman in ue5-main branch]
2023-09-04 07:29:03 -04:00
lonnie li
b61dc7b9df ModelingTools: Fixed gap in gutter when baking MaterialID in the Bake Textures tool.
#rb jimmy.andrews
#jira UE-191491

[CL 26813067 by lonnie li in ue5-main branch]
2023-08-03 11:48:32 -04:00
rinat abdrashitov
4ccfed2a3d Fixed a bug where overlay normals were used instead of the per-vertex normals.
#rb david.hill
#rnx

[CL 26743550 by rinat abdrashitov in ue5-main branch]
2023-08-01 12:45:38 -04:00
rinat abdrashitov
ac8014e909 Added ability to specify force inpaint mask via weight map name in addition to just plain array.
#rb jimmy.andrews
#rnx

[CL 26583207 by rinat abdrashitov in ue5-main branch]
2023-07-25 14:34:41 -04:00
avudnez
f9797f7199 PR #10645: Fix extra parentheses compilation warning with clang-cl
#jira UE-190329
#rb matija.kecman

[CL 26546845 by avudnez in ue5-main branch]
2023-07-24 12:27:01 -04:00
jimmy andrews
02a0a370eb add variant of mesh projection hull that keeps 3d hull on one side of the projection
#rb rinat.abdrashitov

[CL 26469457 by jimmy andrews in ue5-main branch]
2023-07-19 16:20:22 -04:00
alex mcadams
66a4546e14 Chaos Cloth Asset: TransferBoneWeights bugfixes.
* Fail gracefully if you don't have any initial matches when doing Inpaint Weights.
* Fix ClothPatternToDynamicMesh to actually populate the NonManifoldMapping data.

#rb rinat.abdrashitov

[CL 26249234 by alex mcadams in ue5-main branch]
2023-06-26 19:49:31 -04:00
rinat abdrashitov
4ef78ca57e -Added an operator for smoothing overlays of any dimension containing any scalar data
-Added a function for computing per-edge cotangent weights
-Added a function for computing edge lengths
-Added a geometry script function for bluring colors

#rb david.hill
#jira none

[CL 26029009 by rinat abdrashitov in ue5-main branch]
2023-06-15 18:19:32 -04:00
rinat abdrashitov
7f43547bc2 Added an operation to compute per-vertex averaged value of all overlay elements.
#rb david.hill
#jira none

[CL 26022763 by rinat abdrashitov in ue5-main branch]
2023-06-15 15:18:03 -04:00
rinat abdrashitov
420dc7a32c -Add optional smoothing of weights after transfer.
-Add support for multulayerd meshes.
-Add an option to compute the laplacian on intrisic mesh.
-Add a mask to force computation of inpainted weights.
-Add the laplacian energy term.
-Improved peformance by getting the sparse matrix from the solve and then iterating over all (most zero) values.


#rb halfdan.ingvarsson
#rnx
#jira none

[CL 26019677 by rinat abdrashitov in ue5-main branch]
2023-06-15 13:48:31 -04:00
semion piskarev
d27ea02f0c MeshModelingTools: Subdivide tool improvements dealing with meshes with open boundaries.
- Factor out "extra corner" finding code from PolyEd and add support for it in subdivide tool.
- Add support for rounded corners for mesh boundaries.
- Override subdivision scheme during tool usage rather than just at tool start, to allow extra corners to fix some issues.
- Add some clarifying comments about schemes.

#rb Jimmy.Andrews
#jira UE-185416

[CL 26011610 by semion piskarev in ue5-main branch]
2023-06-15 08:56:02 -04:00
rinat abdrashitov
143c49bed6 -Added a funciton to MeshLocalParam to return an array of points with set UVs.
-Added a function to smooth weights for an array of vertices and all vertices within a geodesic distance away from them.


#rb  jimmy.andrews
#jira none
#rnx

[CL 25956360 by rinat abdrashitov in ue5-main branch]
2023-06-13 13:19:10 -04:00
rinat abdrashitov
a772e046fc -Fixed a ConstructMatrixSolver typo.
-Runt the solve for each column in parallel using ParallelFor.
-Allow to set fixed values contraints via a  Dense matrix.
-When calling the Solve allow to output a sparse matrix by prunning small numbers.

#rb tyson.brochu
#jira none
#rnx

[CL 25956288 by rinat abdrashitov in ue5-main branch]
2023-06-13 13:16:06 -04:00
rinat abdrashitov
347165bea8 -Added SmoothBoneWeights geometry operator that will contain a collection of algorithms for smoothing skin/bone weights.
-Refactored the SkinWeightsPaintTool to use the new operator.

#rb david.hill
#rb kiaran.ritchie
#jira none

[CL 25879825 by rinat abdrashitov in ue5-main branch]
2023-06-08 15:45:35 -04:00