130 Commits

Author SHA1 Message Date
simon orr
01eb0e4284 Tracking RBAN memory allocations back to associated Assets and Packages. Updating for MemQuery and Insights.
#rb anton.dunchev
[FYI] jason.chin, Daniel.Broder, jonathan.bunner, zephyrus.mckinnon

[CL 36435372 by simon orr in 5.5 branch]
2024-09-19 11:38:57 -04:00
vincent robert
4e3fc66d27 Fix scaling issue with RBAN
Adding a Cvar to control scaling in simulated space

#rb chris.caulfield

[CL 35726371 by vincent robert in ue5-main branch]
2024-08-21 18:56:43 -04:00
daniel holden
33f29e5d00 Updated LLM reporting for Animation Graph. Added new LLM scope "Animation/Graph" to cover full graph evaluation. Tightened scope of "Animation/RigidBody" and "Animation/RigidBodyWithControl" to capture all of the allocations. Removed "Animation/DeadBlending" and "Animation/Intertialization" as these were previously capturing allocations unrelated to these nodes.
#rb Thomas.Sarkanen

[CL 33825894 by daniel holden in ue5-main branch]
2024-05-22 08:14:55 -04:00
chris caulfield
30a95d74fc Chaos Debug Draw
- debug draw system supports out-of-context draws
- add debug draw timelines to RBAN
- debug draw context cleanup
- new debug draw command system (not used yet)

Debug Draw commands from a thread on which DD is not initialized will fall back to a "global frame" which is a never-ending debug draw frame that we pull debug draw commands from every time we render. Draws to the global frame suffer from the same flicker problems as the old DD backend but it will allow use to remove the old system. The ultimate goal is to give a context to all threads that use DD.

Debug Draw commands can now be more sophisticated and can defer decisions like the color and line thickness, or whether to display at all, to render time. This will be important when we can rewind the debug draw and want to change visualization settings after the commands have been queued. This can also make the draw queue much smaller (e.g, when drawing a mesh we previously had to enqueue a Line command for every edge, and now it is just an implicit object pointer)

[CL 33481131 by chris caulfield in ue5-main branch]
2024-05-07 07:29:15 -04:00
vincent robert
db50b7029e In RBAN add an option not to run the narrow phase every solver iteration.
#prefligh 660f13bda77c355f53880216
#rb chris.caulfield

[CL 32756197 by vincent robert in ue5-main branch]
2024-04-05 07:12:38 -04:00
christopher waters
b80d33a5d6 Moving USkeletalBodySetup out of "PhysicsEngine/PhysicsAsset.h" and into its own header "PhysicsEngine/SkeletalBodySetup.h"
#rb Tim.Smith

[CL 32451501 by christopher waters in ue5-main branch]
2024-03-22 17:23:45 -04:00
sergio gardeazabal
3a17ab43c6 [ChaosVD] Fix an issue where solvers were not flagged as server and RBAN solver will have the incorrect ID recorded.
Without this fix, RBAN solver recording is non functional if a Rigid Solver has an id 1 (usual on first recordings of a session), and some visualization flags that color or hides geometry based on if a particles is from server or client does not work.

#jira UE-207855
#tests Tested by doing a recording of out test map for RBAN and playing it back PIE
#rb Benn.Gallagher, cedric.caillaud, Chris.Caulfield

[CL 31772836 by sergio gardeazabal in ue5-main branch]
2024-02-23 14:55:18 -05:00
yoan stamant
0d5635a910 Removed some headers dependencies on 'FHitResult' and 'FOverlapResult'
#rb Mieszko.Zielinski

[CL 31470741 by yoan stamant in ue5-main branch]
2024-02-14 09:15:30 -05:00
alex kahn
cdfd11e33e [Backout] - CL31425693 - CIS UE Error Backout 4/4
[FYI] Yoan.StAmant
Original CL Desc
-----------------------------------------------------------------
Removed some headers dependencies on 'FHitResult' and 'FOverlapResult'
#rb Mieszko.Zielinski

[CL 31440421 by alex kahn in ue5-main branch]
2024-02-13 14:37:03 -05:00
yoan stamant
00a0c5ac5d Removed some headers dependencies on 'FHitResult' and 'FOverlapResult'
#rb Mieszko.Zielinski

[CL 31425867 by yoan stamant in ue5-main branch]
2024-02-13 09:57:09 -05:00
benjamin jillich
fb830776ad Physics is broken for the strings on Taro's hoodie in MH_UEFN_QA
Introduced new flag to ignore the RBAN LOD threshold CVAR and force use the one locally set on the anim graph node.



#changelist validated
#virtualized

[CL 31291341 by benjamin jillich in ue5-main branch]
2024-02-08 10:05:16 -05:00
danny chapman
c33560173d Implementing Physics Control Profiles. This continues refactoring to align PhysicsControlComponent and RigidBodyWithControl. Also fixes some problems with collisions
#jira UE-168736,UE-163102
#rb timothy.daoust

[CL 30968089 by danny chapman in ue5-main branch]
2024-01-29 09:31:30 -05:00
sergio gardeazabal
394d9ac363 [ChaosVD] Adding Scene Queries recording support
- Created CVD Macros to trace the three scene query types we have in all their modes
- Create CVD data wrappers for scene queries related data
- Added support to debug draw implicit objects in CVD directly (without creating a mesh)
- Created a new Scene Query Data inspector. This is a custom details panel which will show the data for any selected query in the viewport


#jira UE-193754, UE-203452, UE-203451, UE-193755
#rb Benn.Gallagher

[CL 30821555 by sergio gardeazabal in ue5-main branch]
2024-01-23 17:46:17 -05:00
carles fernandez
ed1ddd0c71 Simplified logic which decides whether RBAN should be enabled or disabled server side.
p.RigidBodyNodeServer has been removed in favor of the already existing "p.RigidBodyNode". We are now setting this CVar to false via DedicatedServerEngine.ini.
Refactored CVarEnableRigidBodyNode to use FAutoConsoleVariableRef instead of TAutoConsoleVariable.
Using bools directly instead of calling (CVar.GetValueOnAnyThread())

#tests Tested in editor and cooked builds (Development and Test configs).
#rb andrew.ladenberger, evgenii.babinets
[FYI] richard.smith

[CL 30816069 by carles fernandez in ue5-main branch]
2024-01-23 15:37:14 -05:00
steve robb
f029468598 Fixed up a lot of bool-taking container resize functions to take EAllowShrinking instead.
[CL 30729174 by steve robb in ue5-main branch]
2024-01-19 16:41:35 -05:00
jaime cifuentes
de0433a64a Reworked Skeleton Mesh Linkup map, to avoid leaving dead data in the LinkUpTable.
#rb Thomas.Sarkanen
#jira UE-199963

[CL 30629970 by jaime cifuentes in ue5-main branch]
2024-01-16 04:26:55 -05:00
carles fernandez
1662680b8d Disabled RBAN (Rigid Body Animation Nodes) on the server.
- Created new cvar: "p.RigidBodyNodeServer" which defaults to 0 (disabled).
- Added new STAT_RigidBodyNodeInitTime_SetupSimulation which tracks the more expensive part of calling FAnimNode_RigidBody::InitPhysics.
#rb matt.harris, richard.smith

#tests Tested in editor and cooked builds (Development and Test configs).
[FYI] richard.smith

[CL 29962655 by carles fernandez in ue5-main branch]
2023-11-28 12:14:00 -05:00
mickael gilabert
c3df45d9f7 Fix OOB when accessing SkeletonBoneIndexToBodyIndex array with a negative index
[REVIEW] [at]nicholas.frechette
#rnx

[CL 29277618 by mickael gilabert in ue5-main branch]
2023-10-31 11:43:27 -04:00
benjamin jillich
3ddf102b31 Runtime switching override physics assets on rigid body animation node using function library
A few days ago I've added runtime switching for the override physics assets by exposing the override physics assets as a pin. To align better with the pattern we use with larger objects, I've now changed that to a function library.


#changelist validated

#virtualized

[CL 29127203 by benjamin jillich in ue5-main branch]
2023-10-26 05:08:54 -04:00
stan hormell
8c1ae5f6e9 [Backout] - CL29082994 - CIS Error
[FYI] benjamin.jillich
Original CL Desc
-----------------------------------------------------------------
Runtime switching override physics assets on rigid body animation node using function library

A few days ago I've added runtime switching for the override physics assets by exposing the override physics assets as a pin. To align better with the pattern we use with larger objects, I've now changed that to a function library.

[CL 29110798 by stan hormell in ue5-main branch]
2023-10-25 19:44:03 -04:00
benjamin jillich
21abf94281 Runtime switching override physics assets on rigid body animation node using function library
A few days ago I've added runtime switching for the override physics assets by exposing the override physics assets as a pin. To align better with the pattern we use with larger objects, I've now changed that to a function library.

[CL 29083014 by benjamin jillich in ue5-main branch]
2023-10-25 05:49:26 -04:00
dan kaufman
2ab516c284 Add new physics controls for use with RigidBody AnimNodes
Slack thread with more info
https://epicgames.slack.com/archives/C045B1XPYTA/p1698083710894179
NOTE:  Tested w/ full Durian run (PIE) in DEV-FN-27 with changes applied locally
[FYI] Chris.Caulfield, Charles.Anderson
#rnx

[CL 29077898 by dan kaufman in ue5-main branch]
2023-10-25 02:58:29 -04:00
benjamin jillich
7df2820f11 RBAN Static analysis fix
[CL 28884867 by benjamin jillich in ue5-main branch]
2023-10-18 14:33:06 -04:00
benjamin jillich
04ce605fee RBAN can now expose the override physics asset as a pin
* Detects changes on the physics override asset in case it gets piped in as a pin and re-initializes physics along with the bone references.
* Added a new property to control if the physics asset shall be defaulted to the one set to the skeletal mesh in case the overwrite physics asset is not specified. Default is true to ensure behavior doesn't change.

[CL 28873907 by benjamin jillich in ue5-main branch]
2023-10-18 07:42:40 -04:00
nick brett
d1c6023925 [UE] RBAN Add CVar to force the use of the default deferred simulation CVar to determine whether to defer simulation, ignoring any settings in individual nodes.
- This can be used to force deferred simulation on or off for all RBAN

#rb [at]chris.caulfield
[FYI] [at]Ryan.Wiederkehr, [at]Charles.Anderson

[CL 28268650 by nick brett in ue5-main branch]
2023-09-27 06:37:32 -04:00