646 Commits

Author SHA1 Message Date
Chris Caulfield
72822c7aca Chaos - 5.3.X custom fix for single-particle island sleeping (see CL 27964398 for full fix)
- fix islands not waking when a particle is disabled
- fix waking of isolated particles when all other particles or constraints have been removed from their island

1) We were not waking islands on removal of a particle. 2) We were destroying single-particle islands before the sleep status was processed, preventing particles from being awoken when the penultimate particle was removed from an island.

The fix is to explicitly wake islands on particle removal, and to defer island/node destruction until FinalizeIslands, after we have processed sleep/wake changes and synched the sleep state to particles.

#rb benn.gallagher
#jira UE-198105
#p4v-cherrypick 27964398

[CL 28852519 by Chris Caulfield in 5.3 branch]
2023-10-17 16:23:44 -04:00
Jimmy Andrews
92c99e6220 Stop creating the Geometry Collection's Dynamic Component for Editor Preview Worlds (the worlds used for tool preview viewports, and thumbnails) since the Dynamic Component has data that isn't tracked for undo, so can't be active in editors contexts where undo can happen.
This fixes an issue where stale data on the preview thumbnail caused an ensure on undo of any fracture operation that changed the number of bones in the collection.

#jira UE-191403
#rb cedric.caillaud

[CL 26680869 by Jimmy Andrews in 5.3 branch]
2023-07-28 14:20:15 -04:00
Michael Forot
0cc6a49818 Allow multiple Field targets to be rendered at the same time
#rb devon.penney
#jira none

[CL 26506408 by Michael Forot in 5.3 branch]
2023-07-21 04:44:47 -04:00
bob tellez
dc8c7afad9 [Backout] - CL26484702
#fyi Michael.Forot
Original CL Desc
-----------------------------------------------------------------
Allow multiple Field targets to be rendered at the same time

#rb devon.penney
#jira none

[CL 26491208 by bob tellez in 5.3 branch]
2023-07-20 14:25:34 -04:00
Michael Forot
89bf92a58e Allow multiple Field targets to be rendered at the same time
#rb devon.penney
#jira none

[CL 26484702 by Michael Forot in 5.3 branch]
2023-07-20 09:44:21 -04:00
zach bethel
003552b730 Deprecated non-command list RHI methods.
- RHICreate{Vertex, Index, Structured}Buffer
 - RHICreate{ShaderResource, UnorderedAccess}View
 - RHIUpdateUniformBuffer
 - Various initialization / locking methods for helper buffer types in RHIUtilities.h

The goal is to continue to force resource creation through command lists to avoid surprises with moving things off the render thread.

#rb christopher.waters

[CL 26183746 by zach bethel in 5.3 branch]
2023-06-22 11:25:09 -04:00
vincent robert
cf8453e574 Disable connectivity hack
Sometimes the connectivity graph was not updated correctly due to some missing events. This bug couldn't be reproduced locally, so this is an attempt to remove the hack.
#rb michael.bao

[CL 26099319 by vincent robert in 5.3 branch]
2023-06-19 14:53:08 -04:00
zach bethel
c716a9d71b Deprecated InitRHI() in favor of InitRHI(FRHICommandListBase&).
#rb mihnea.balta, luke.thatcher, christopher.waters

[CL 26097154 by zach bethel in 5.3 branch]
2023-06-19 14:00:50 -04:00
jeremy moore
c52fad955a Hide ISMPool ISMs when empty.
[CL 26075622 by jeremy moore in 5.3 branch]
2023-06-16 19:32:24 -04:00
vincent robert
0912835bba In the Geometry Collection Component the async tick had to block Game Thread and Physics Thread to apply the replicate data. Now all the replication code is copied and executed on the Physics thread. This allow not to block both thread at the same time.
#rb cedric.caillaud

[CL 26061003 by vincent robert in 5.3 branch]
2023-06-16 13:49:45 -04:00
michael bao
b43aa7899e setting per-particle collision filter data on the geometry collection needs to sync that data to the physics thread
#jira UE-188831
[FYI] yue.xiao

[CL 26058835 by michael bao in 5.3 branch]
2023-06-16 13:04:14 -04:00
jimmy andrews
fc05e6ece4 Attempt to make the Static Mesh -> Geometry Collection conversion more robust to missing normal/tangent information by forcing a recompute if either attribute is *entirely* invalid, even if the recompute flag is not set.
#rb rinat.abdrashitov

[CL 26055942 by jimmy andrews in 5.3 branch]
2023-06-16 12:11:53 -04:00
markus boberg
31ded4404b Networked Physics: Enable refactored physics replication in Juno.
Disable local GC movement replication logic if connected in a Cluster Union.
Implement PhysicsObjectPreset to override physics replication mode on replicated and simulated Juno actors.

#rb todd.eckert, michael.bao

[CL 25973950 by markus boberg in ue5-main branch]
2023-06-14 06:17:30 -04:00
noah presser
5d4ec6a6ba Add scopes to async physics tick in various components
[REVIEW] [at]satchit.subramanian

[CL 25964752 by noah presser in ue5-main branch]
2023-06-13 17:37:20 -04:00
zach bethel
a9a5fa39db Deprecated non-command list variant of InitResource and UpdateResource. Patched the engine to pass command lists through. Follow-up CL's will refactor individual locations to thread command lists through the various callstacks, but that was done very judiciously in this CL to reduce risk.
#rb mihnea.balta, christopher.waters

[CL 25953623 by zach bethel in ue5-main branch]
2023-06-13 11:46:40 -04:00
robomerge
2e34b6a655 Make geometry collection convert vertex colors to sRGB when converting from FLinearColor to the render buffer FColor for new geometry collections.
For old geometry collections, keep the old behavior so that vertex colors are not changed unexpectedly on existing assets.  Add a bool on the UGeometryCollection asset object to let user control whether the conversion is performed.

#rb brice.criswell

[CL 25934820 by robomerge in ue5-main branch]
2023-06-12 15:24:20 -04:00
jeremy moore
a0faa29fa4 Add tag support to ISMPool.
ISMPool uses serialized version of the default primitive custom data to allow us to copy paste ISMPools for debugging.
ISMPool uses fast version of hash combine.
Expose ISMPool actors getter from ISMPool subsystem.

[CL 25886022 by jeremy moore in ue5-main branch]
2023-06-08 19:39:06 -04:00
michael bao
742fc9373b collision profile per level setting on geometry collections should have precedence over the abandoned profile
[CL 25885436 by michael bao in ue5-main branch]
2023-06-08 18:56:52 -04:00
steven barnett
ad28dbad73 -> Use new UpdateClusterMassProperties in ClusterUnion
-> Add MoveClusterToMassOffset where ForceMassOrientation==nullptr used to rely on UpdateClusterMassProperties to set X/R
-> Rotate FDerivedDataGeometryCollectionCooker version string GUID so that GC inertias will be regenerated

#rb cedric.caillaud, michael.bao

[CL 25864320 by steven barnett in ue5-main branch]
2023-06-07 21:32:30 -04:00
vincent robert
1dbafd35dd AncientGame fails to compile, Fix breaking API
FBreakChaosEvent was created in Engine to replaced FChaosBreakEvent event which was in CHAOSSOLVER_API and so no accessible in Engine for circular dependency issue. But in order to backward compatibility with blueprint delegate, and code the only easy way was to keep the same name. This CL is changing back those names to FChaosBreakEvent.
Same apply for Removal and Crumbling events.
#jira UE-187555
#preflight 6478df285d23eca37d9f4ab4
#rb cedric.caillaud

[CL 25736541 by vincent robert in ue5-main branch]
2023-06-01 15:22:19 -04:00
jimmy andrews
fe746a8526 fix issue with fracture dynamic collection not matching rest collection, causing an ensure on fracture reset: change defaults to update dynamic collection, and make sure the dynamic is also reset if the rest is updated so they do not go out of sync
#preflight 64779bd10848b7126de26d80
#rb cedric.caillaud

[CL 25720427 by jimmy andrews in ue5-main branch]
2023-06-01 00:40:28 -04:00
vincent robert
794de23f2e Clean up : Remove Break, Removal and Crumbling Events from CHAOSSOLVERENGINE_API, those events are now in ENGINE_API
#preflight 647778fd1c5c2b3fa2c4172d
#rb cedric.caillaud

[CL 25711914 by vincent robert in ue5-main branch]
2023-05-31 16:02:01 -04:00
michael bao
b018435041 disable particles when children array becomes empty - add additional debug messages into geometry collection to track why ensure happens
#preflight 6470f8665b1dc793b72e0c54
[FYI] cedric.caillaud

[CL 25655048 by michael bao in ue5-main branch]
2023-05-26 18:19:12 -04:00
michael bao
535c83f8ee remove unnecessary immediate handling of cluster union deferred updates to better batch them for perf
#preflight 647007e6407983b998419deb

[CL 25649453 by michael bao in ue5-main branch]
2023-05-26 13:55:36 -04:00
michael bao
430a23c3b2 geometry collections should not try to replicate empty internal clusters
#preflight 646f972dd1157dc4a77a1b92

[CL 25645243 by michael bao in ue5-main branch]
2023-05-26 12:18:17 -04:00