Commit Graph

87 Commits

Author SHA1 Message Date
graham wihlidal
254c5dedc9 Corrected OnMotionBegin/OnMotionEnd to run on the render thread, and refactored the previous in motion logic to use the new events.
#jira UETOP-1595
#rb brett.miller
#lockdown nick.whiting
[FYI] brice.criswell

#ROBOMERGE-SOURCE: CL 16178780 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v792-16166999)

[CL 16178783 by graham wihlidal in ue5-main branch]
2021-05-01 21:33:36 -04:00
brett miller
3e4e8bd152 GeometryCollectionComponent
-- Added state machine logic and scene proxy callbacks for triggering when motion begins and ends.

#jira UETOP-1546
#rb graham.wihlidal
#lockdown nick.whiting

#ROBOMERGE-SOURCE: CL 16178376 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v792-16166999)

[CL 16178381 by brett miller in ue5-main branch]
2021-05-01 17:51:29 -04:00
graham wihlidal
efab24f960 Fix duplicate symbol unity build error
#rb trivial
#lockdown nick.whiting

#ROBOMERGE-SOURCE: CL 16151929 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)

[CL 16151940 by graham wihlidal in ue5-main branch]
2021-04-28 21:27:58 -04:00
graham wihlidal
28742c1787 Fixed locked previous GC transforms (locked motion blur) by detecting dynamic->static transition and resetting previous transforms to current.
#rb brice.criswell
[FYI] brett.miller
#lockdown nick.whiting

#ROBOMERGE-SOURCE: CL 16150932 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)

[CL 16150970 by graham wihlidal in ue5-main branch]
2021-04-28 19:53:28 -04:00
graham wihlidal
0fa361fa13 Fixed Nanite geometry collection velocity vectors, and optimizing transform updates for dummy GPU scene instance culling placeholders. Scene proxies can now fully own the concatenation of transform updates and avoid doing incorrect or redundant work during GPU Scene updates.
#jira UETOP-1352
#rb brandon.dawson
[FYI] ola.olsson, brian.karis, brice.criswell, brett.miller, michal.valient
#lockdown nick.whiting

#ROBOMERGE-OWNER: graham.wihlidal
#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 16141209 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)
#ROBOMERGE-CONFLICT from-shelf

[CL 16141875 by graham wihlidal in ue5-main branch]
2021-04-28 05:36:47 -04:00
graham wihlidal
30b16a59f4 Do not skip InitDynamicData result if called from geometry collection initialization. Fixes corrupt rendering in TM-ChaosDestruction.
#rb trivial
[FYI] michal.lentine, brice.criswell
#lockdown nick.whiting
#jira UE-114231

#ROBOMERGE-SOURCE: CL 16107943 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)

[CL 16107947 by graham wihlidal in ue5-main branch]
2021-04-24 04:37:11 -04:00
graham wihlidal
ba3a7bf41e Rewrite of UGeometryCollection::InitDynamicData()
* Implemented thread safe object pool / free list allocator (FGeometryCollectionDynamicDataPool)
 * Added Chaos stats for total transforms and changed transforms
 * Removed TransformsAreEqual mechanism that caused full transform updates to occur unnecessarily for 2 subsequent frames, as the state wasn't stable until the previous 3 frames were stable. This was incredibly innefficient for GPUScene, etc..
 * InitDynamicData now returns the data allocation (which can be null if not dynamic or if no transforms have changed), users of this now check if it's available, and either skip or fall back to the static/rest path otherwise
 * Cleaned up some code paths by combining them with similar passes
 * Removed tons of allocations, including heavy allocations/memcopies of transform data, even on stable frames (which were immediately deallocated right after allocation and setup of the dynamic data)
 * Saves ~0.5 to 1.0ms of CPU time in heavy scenes
 * Saves ~0.5ms of GPU time doing far less GPUScene updates
 * Main optimization around this refactor is forthcoming in a followup CL (avoid calling MarkRenderTransformDirty in TickComponent).

#rb brett.miller, brice.criswell
#lockdown nick.whiting
[FYI] brian.karis, rune.stubbe
#jira UETOP-1088

#ROBOMERGE-SOURCE: CL 16059409 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)

[CL 16061411 by graham wihlidal in ue5-main branch]
2021-04-20 10:45:04 -04:00
Benn Gallagher
c7cced57cd Geometry Collection : Cache Attribute
- Strip geometry attributes from the collection when using the collection as a simulation viewer.
- Use the transferred bounds on the minimal asset for rendering bounds.
- Minor clean to expose user controllable cache only state to the GeometryCollectionObject


#jira UE-113611
#rb Brett.Miller
[FYI] Graham.Whlidal
#lockdown nick.whiting

#ROBOMERGE-OWNER: Benn.Gallagher
#ROBOMERGE-AUTHOR: brice.criswell
#ROBOMERGE-SOURCE: CL 16052869 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)
#ROBOMERGE-CONFLICT from-shelf

[CL 16060655 by Benn Gallagher in ue5-main branch]
2021-04-20 09:50:07 -04:00
brett miller
72c79f623e GeometryCollectionComponent
-- check for nullptr on FNaniteGeometryCollectionSceneProxy->GetPrimitiveSceneInfo

#jira UE-112916
#rb none
#lockdown simon.tourangeau

#ROBOMERGE-SOURCE: CL 15965449 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v787-15839533)

[CL 15981296 by brett miller in ue5-main branch]
2021-04-12 15:19:31 -04:00
cedric caillaud
93ffec6ccd CHaos Physics - Allow union of cluster to be attached to dynamic parents
- Added Parent() function to lcustred particle handle ( and adjusted code that was using ClusterIds().id instead
- In the geometry collection collection , make sure to check the internal clustered parent and update their kinematic target when necessary
- Fix typo issue ClustersToReuild => ClustersToRebuild

#rb brice.criswell
#jira none

[CL 15951781 by cedric caillaud in ue5-main branch]
2021-04-07 23:42:46 -04:00
brett miller
ecc8260541 GeometryCollection
-- fixed a bug in calc bounds when creating a new (empty) rest collection

#jira none
#rb none

#ROBOMERGE-SOURCE: CL 15885801 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15889600 by brett miller in ue5-main branch]
2021-04-01 11:11:57 -04:00
brett miller
84cebc9784 GeometryCollection
-- Removed vertex visibility test from CalcBounds as it was having the opposite performance effect than intended.

#jira none
#rb none

#ROBOMERGE-SOURCE: CL 15882294 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15889237 by brett miller in ue5-main branch]
2021-04-01 10:41:00 -04:00
brett miller
2f96887ddf GeometryCollectionComponent
-- changed the way ISMCs are spawned for embedded geometry to correct issues with cache spawns.

#jira none
#rb none

#ROBOMERGE-SOURCE: CL 15869816 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15869819 by brett miller in ue5-main branch]
2021-03-30 20:35:50 -04:00
brice criswell
ef7a9e4414 GeometryCollection : Rendering
-Fix regression with GeometryCollection not rendering in Standalone Game
#rb None
#jira None
#okforgethub public, internal
#preflight 605cf0a80944f60001da62ff

#ROBOMERGE-SOURCE: CL 15834257 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v785-15821902)

[CL 15834721 by brice criswell in ue5-main branch]
2021-03-25 18:53:29 -04:00
cedric caillaud
d8aed49cad Chaos Physics - add support for moving geometry collection
- account for component transform on a per frame basis
- updates kinematic particle accordingly
- add missing calls to the solver to support it

#rb brice.criswell, brett.miller
#jira none

[CL 15833163 by cedric caillaud in ue5-main branch]
2021-03-25 17:47:32 -04:00
brett miller
f0231bd8c2 Geometry Collection
-- Embedded geometry tweaked to make them compatible with chaos caching.

#jira none
#rb none

#ROBOMERGE-SOURCE: CL 15814675 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v783-15756269)

[CL 15814730 by brett miller in ue5-main branch]
2021-03-24 21:38:10 -04:00
brice criswell
ccd419269d Chaos : Destruction
Re-exposed the connection method enums to the GeometryCollectionObject.
#rb None
#jira None
#okforgethub public, internal
#preflight 605447dd168034000119dc7b

#ROBOMERGE-OWNER: brice.criswell
#ROBOMERGE-AUTHOR: brice.criswell
#ROBOMERGE-SOURCE: CL 15745578 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)
#ROBOMERGE-CONFLICT from-shelf

[CL 15750237 by brice criswell in ue5-main branch]
2021-03-19 15:28:38 -04:00
brett miller
167980ad12 GeometryCollectionComponent
-- wrapped PostEditChangeChainProperty in WITH_EDITOR to prevent build error for runtime.

#jira none
#rb none

#ROBOMERGE-SOURCE: CL 15745059 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)

[CL 15745060 by brett miller in ue5-main branch]
2021-03-18 23:55:49 -04:00
brett miller
362cdbc584 GeometryCollectionComponent
Fracture Mode
-- moved ShowBoneColors from FractureMode to GeometryCollectionComponent to make it persistent.

#jira UE-110753
#rb none

#ROBOMERGE-SOURCE: CL 15742420 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)

[CL 15743750 by brett miller in ue5-main branch]
2021-03-18 20:04:04 -04:00
Marc Audy
0cbbc781ca Merge UE5/Release-Engine-Staging @ 15740152 to UE5/Main
This represents UE4/Main @ 15709114

[CL 15740605 by Marc Audy in ue5-main branch]
2021-03-18 15:20:03 -04:00
michael forot
caf29928c4 Fix asset supporet for old levels
#rb none
#jira none

#ROBOMERGE-SOURCE: CL 15664514 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v779-15635321)

[CL 15664542 by michael forot in ue5-main branch]
2021-03-10 06:11:34 -04:00
Marc Audy
8f73cd7fa9 Merge UE5/Release-Engine-Staging @ 15630841 to UE5/Main
This represents UE4/Main @ 15601601

[CL 15631170 by Marc Audy in ue5-main branch]
2021-03-05 19:27:14 -04:00
brett miller
5ea1e6818c GeometryCollectionComponent
-- corrected a bug that prevented collision events from notifying.

#jira UE-109894
#rb none

#ROBOMERGE-SOURCE: CL 15596645 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v777-15581079)

[CL 15596649 by brett miller in ue5-main branch]
2021-03-03 21:40:44 -04:00
brice criswell
114a470cfb Chaos : Clustering
Remove active cluster particle array support, its not actually used by anything.

[FYI] Benn.Gallagher
#rb None
#jira UE-108907
#okforgethub public, internal

#ROBOMERGE-OWNER: brice.criswell
#ROBOMERGE-AUTHOR: brice.criswell
#ROBOMERGE-SOURCE: CL 15508170 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)
#ROBOMERGE-CONFLICT from-shelf

[CL 15509364 by brice criswell in ue5-main branch]
2021-02-23 19:43:30 -04:00
brett miller
83df3b39b9 GeometryCollection -- updated GetComponent to use undeprecated method.
#jira none
#rb none

#ROBOMERGE-SOURCE: CL 15486290 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15486295 by brett miller in ue5-main branch]
2021-02-21 17:15:16 -04:00