Commit Graph

2999 Commits

Author SHA1 Message Date
Benn Gallagher
8757cb3641 Physics interface cleanup.
* Removed deprecated or dead code paths
* Simplified build system setup for physics support
* Deprecated build system flags and unsupported macros

#jira none
#rb Chris.Caulfield, Kriss.Gossart
#preflight 62963ec0fe779f23c8ea0c5e

[CL 20450744 by Benn Gallagher in ue5-main branch]
2022-06-01 06:59:18 -04:00
cedric caillaud
efbfce8de7 Chaos destruction : make geometry collection use the inertia conditioning option
[FYI] chris.caulfield

#ROBOMERGE-AUTHOR: cedric.caillaud
#ROBOMERGE-SOURCE: CL 20443210 via CL 20443211 via CL 20443217
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20449542 by cedric caillaud in ue5-main branch]
2022-06-01 04:25:06 -04:00
robert manuszewski
d1443992e1 Deprecating ANY_PACKAGE.
This change consists of multiple changes:

Core:
- Deprecation of ANY_PACKAGE macro. Added ANY_PACKAGE_DEPRECATED macro which can still be used for backwards compatibility purposes (only used in CoreUObject)
- Deprecation of StaticFindObjectFast* functions that take bAnyPackage parameter
- Added UStruct::GetStructPathName function that returns FTopLevelAssetPath representing the path name (package + object FName, super quick compared to UObject::GetPathName) + wrapper UClass::GetClassPathName to make it look better when used with UClasses
- Added (Static)FindFirstObject* functions that find a first object given its Name (no Outer). These functions are used in places I consider valid to do global UObject (UClass) lookups like parsing command line parameters / checking for unique object names
- Added static UClass::TryFindType function which serves a similar purpose as FindFirstObject however it's going to throw a warning (with a callstack / maybe ensure in the future?) if short class name is provided. This function is used  in places that used to use short class names but now should have been converted to use path names to catch any potential regressions and or edge cases I missed.
- Added static UClass::TryConvertShortNameToPathName utility function
- Added static UClass::TryFixShortClassNameExportPath utility function
- Object text export paths will now also include class path (Texture2D'/Game/Textures/Grass.Grass' -> /Script/Engine.Texture2D'/Game/Textures/Grass.Grass')
- All places that manually generated object export paths for objects will now use FObjectPropertyBase::GetExportPath
- Added a new startup test that checks for short type names in UClass/FProperty MetaData values

AssetRegistry:
- Deprecated any member variables (FAssetData / FARFilter) or functions that use FNames to represent class names and replaced them with FTopLevelAssetPath
- Added new member variables and new function overloads that use FTopLevelAssetPath to represent class names
- This also applies to a few other modules' APIs to match AssetRegistry changes

Everything else:
- Updated code that used ANY_PACKAGE (depending on the use case) to use FindObject(nullptr, PathToObject), UClass::TryFindType (used when path name is expected, warns if it's a short name) or FindFirstObject (usually for finding types based on user input but there's been a few legitimate use cases not related to user input)
- Updated code that used AssetRegistry API to use FTopLevelAssetPaths and USomeClass::StaticClass()->GetClassPathName() instead of GetFName()
- Updated meta data and hardcoded FindObject(ANY_PACKAGE, "EEnumNameOrClassName") calls to use path names

#jira UE-99463
#rb many.people
[FYI] Marcus.Wassmer
#preflight 629248ec2256738f75de9b32

#codereviewnumbers 20320742, 20320791, 20320799, 20320756, 20320809, 20320830, 20320840, 20320846, 20320851, 20320863, 20320780, 20320765, 20320876, 20320786

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20430220 via CL 20433854 via CL 20435474 via CL 20435484
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20448496 by robert manuszewski in ue5-main branch]
2022-06-01 03:46:59 -04:00
yizhou chen
4896c0c440 Chaos : Flesh
Add caching functions to flesh actor and XPBD volume constraints

#rb: none
#fyi Brice.Criswell, Ryan.Kautzman
#preflight 6296a3bb2a1851b4cca4ae66
#preflight 6296aafa2a1851b4cca54bf3

[CL 20444953 by yizhou chen in ue5-main branch]
2022-05-31 20:14:49 -04:00
Jimmy Andrews
42244fd882 fix crash in Geometry Collection Proxy when we try to use GetPrimitiveSceneInfo() to get the general hitproxy color for the collection, but it returns null
#preflight 62968c1e9d75300f41bfe60a

[CL 20444420 by Jimmy Andrews in ue5-main branch]
2022-05-31 19:24:34 -04:00
Brice Criswell
976cc92df7 Dataflow : Cleanup
#rb trivial
#preflight 62964828fe779f23c8ede743

[CL 20439624 by Brice Criswell in ue5-main branch]
2022-05-31 14:03:46 -04:00
Brice Criswell
f233b31d80 Dataflow : FName property
- Added FName support for Dataflow::TProperty
#rb trivial
#preflight 62963373e62c873b96cc261d

[CL 20437876 by Brice Criswell in ue5-main branch]
2022-05-31 11:44:59 -04:00
Brice Criswell
a21ff6e4af Dataflow - DragAndDrop support
#rb trivial
#preflight 62963373e62c873b96cc261d

[CL 20437873 by Brice Criswell in ue5-main branch]
2022-05-31 11:44:40 -04:00
benoit gadreau
0465f116f8 Constraints in Sequencer : Improved constraints baking and properties changes
#jira none
#rb none
#preflight 6295df42d57da28cc8ef4f14

[CL 20435145 by benoit gadreau in ue5-main branch]
2022-05-31 06:23:44 -04:00
Ori Cohen
d0479a0441 Workaround so that we can use live coding with engine geometry collection module. This is a hack until explicit load is not needed
#rb Cedric.Caillaud
#preflight 62952ddffb0fca7e580e9636

[CL 20433052 by Ori Cohen in ue5-main branch]
2022-05-30 17:42:34 -04:00
cedric caillaud
68512a0679 Chaos : fix inertia scaling logic for scaled geometry collection
#rb chris.caulfield, brice.criswell
#jira none
#preflight 629409120b089010de3ffeb7

[CL 20432174 by cedric caillaud in ue5-main branch]
2022-05-30 14:27:30 -04:00
cedric caillaud
1fcbb82cb7 Chaos destruction : imporvement on the remove on sleep feature
- Now also remove of the piece does not move for a certain amount of time ( velocity based ) ( behind a Cvar )
- Fix bugs with shrinking not going all the way down to zero
- Simplify math for computing off-center scale matrix ( removed most of the Transform conversion and multiplication )
- Internal clusters can now break upon removal
- Passing more info about internal clusters from PT to GT
- More memory efficient structure passed between PT and GT

#rb none
#jira none
#preflight 62918fdddb0a62f25ce74d44

[CL 20403162 by cedric caillaud in ue5-main branch]
2022-05-28 00:20:07 -04:00
Jimmy Andrews
169f6ff2dc don't exclude childless roots from GeometryCollectionAlgo::ComputeRecursiveOrder
#rb cedric.caillaud
#preflight 629189f9bc1213abd7f8d96c

[CL 20402974 by Jimmy Andrews in ue5-main branch]
2022-05-27 22:49:34 -04:00
vincent robert
b28bdf4f6b Fix crash in Triangle Mesh BVH when loading Reverb project
#preflight: 6290e04ad24a7fc585f5127c

[CL 20398315 by vincent robert in ue5-main branch]
2022-05-27 16:32:20 -04:00
max whitehead
5bc4aabca9 Add support for Geometry Collection collision filter changes at runtime
#preflight 628e7d2dc826bd5a7f02ed32
#rb cedric.caillaud

#ROBOMERGE-AUTHOR: max.whitehead
#ROBOMERGE-SOURCE: CL 20387019 via CL 20387027 via CL 20387056
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20388252 by max whitehead in ue5-main branch]
2022-05-26 20:17:19 -04:00
Chris Caulfield
9397651809 Chaos - Collision auto-stiffness experiment (disabled on cvar, WIP)
#rb cedric.caillaud
#jira none
#preflight 629009cee17a02240decbf3c

[CL 20387778 by Chris Caulfield in ue5-main branch]
2022-05-26 19:28:29 -04:00
Brice Criswell
ed9aaa85cd GeometryCollection : Fix CIS
#rb trivial
#preflight trivial

[CL 20387776 by Brice Criswell in ue5-main branch]
2022-05-26 19:28:21 -04:00
Brice Criswell
266e38c598 GeometryCollection - Dataflow Editor
- Configure the dataflow asset editor for the geometry collection object. Currently requires the enabling the pvar (p.Chaos.GeometryCollection.DataflowEditor 1)
#rb Cedric.Caillaud, Jimmy.Andrews
#preflight 628fd5838c077c0d66238920
#preflight 628fdc9af622d972b5f45181
#preflight 629002b94f63120d8ef4914c

[CL 20387372 by Brice Criswell in ue5-main branch]
2022-05-26 19:00:40 -04:00
benn gallagher
544a3e43ec Chaos: Fixed MTD path for heightfield queries not checking cell bounds before entering GJK
#rb Vincent.Robert
#jira UE-153544
#preflight 628b9fcd693c5e1de27cb38f
#lockdown Michael.Lentine

#ROBOMERGE-OWNER: benn.gallagher
#ROBOMERGE-AUTHOR: benn.gallagher
#ROBOMERGE-SOURCE: CL 20380302 in //UE5/Release-5.0/... via CL 20383005
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20385723 by benn gallagher in ue5-main branch]
2022-05-26 17:10:58 -04:00
Brice Criswell
e5b78b28a8 DataflowCore - Updates
#rb trivial
#preflight 628fcda474630984fd4a163d

[CL 20383905 by Brice Criswell in ue5-main branch]
2022-05-26 15:37:37 -04:00
cedric caillaud
5ddbe667f4 Chaos destruction : allow import of collision shapes from static meshes when creating a geometry collection
#rb brice.criswell, ori.cohen
#jira none
#preflight 628dabdcaf7a2e956ba42d3d

[CL 20380362 by cedric caillaud in ue5-main branch]
2022-05-26 12:02:54 -04:00
Brice Criswell
7ca926d0b7 Fix for CIS Warning
#rb trivial
#preflight trivial

[CL 20379127 by Brice Criswell in ue5-main branch]
2022-05-26 10:24:59 -04:00
Brice Criswell
a54e55af70 Chaos : ManagedArrayCollection
- To get the deep copy working in the dataflow on a ManagedArrayCollection. I need to lift the restriction that ALL unique pointers can not be deep copied. This change allows for the deep copy of the unique pointer types that support the Copy(). The current attributes that do not support ::Copy() are: TGeometryParticle, BVHParticles, TArray<TVector<float>>.
#rb Cedric.Caillaud, Jimmy.Andrews
#preflight 628ec96eaf7a2e956bf046b7

[CL 20378701 by Brice Criswell in ue5-main branch]
2022-05-26 09:45:21 -04:00
marc audy
7cd767af9e [Backout] - CL20365693
#fyi Ori.Cohen
Original CL Desc
-----------------------------------------------------------------
Refactor async physics network sync so it doesn't need a callback.
Made it easy to trigger RPCs on same frame for both client and server.

#rb Benn.Gallagher
#preflight 628d83562f2409bc1e07746d

[CL 20376603 by marc audy in ue5-main branch]
2022-05-26 02:38:29 -04:00
cedric caillaud
5c512b9404 Chaos destruction: optimization and experimental collision handling logic
- ignore impulse below close to 0
- cache contact accumulated impulse to avoid recomputing the size for each tested particle
- skip seraching the map for null parent
- add an experimental graph propagation based collision handling ( behind a cvar )

#rb none
#jira none
#preflight 628ec709f622d972b5a6e596

[CL 20374122 by cedric caillaud in ue5-main branch]
2022-05-25 20:29:04 -04:00