Commit Graph

306 Commits

Author SHA1 Message Date
ola olsson
09858c9218 Add filtering of shadow subjects at the proxy level for GPU-Scene supporting primitives (VSM / non-VSM)
- Enables turning off non VSM for more cases.
- Only send primitives with dynamic relevance down the dynamic subject path.
- Optimization: cache IsNaniteProxy flag on FLightPrimitiveInteraction.
- Fix the MaxNonFarCascadeDistance calculation to not include DF cascades.
- Skip SM allocation for uncached SMs without subject primitives.
- Add flag bSupportsGPUScene to FPrimitiveSceneProxy and helper to set up EnableGPUSceneSupportFlags (also turns on bVFRequiresPrimitiveUniformBuffer)
- Add error check to make sure bSupportsGPUScene is not set unless all VFs actually supports GPU-Scene

#rb andrew.lauritzen
#preflight 61af2fe02b3384289ae39e36

#ROBOMERGE-AUTHOR: ola.olsson
#ROBOMERGE-SOURCE: CL 18393307 in //UE5/Release-5.0/... via CL 18393317
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18393321 by ola olsson in ue5-release-engine-test branch]
2021-12-07 05:26:32 -05:00
jon nabozny
b27dcfb385 Support for multiple root pages per Nanite resource
Added UI for changing minimum residency
Decoupled imposter data allocation from root page allocation
Removed convoluted logic around a page's dependencies including itself for legacy reasons
Made streaming of imposter data optional (r.Nanite.Streaming.Imposters)
#rb andrew.lauritzen, ola.olsson
#preflight 6163f8f8eaa06c0001e409ee
#lockdown michal.valient

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: rune.stubbe
#ROBOMERGE-SOURCE: CL 17770690 via CL 17986013 via CL 18368123 via CL 18368152
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18368223 by jon nabozny in ue5-release-engine-test branch]
2021-12-03 10:01:28 -05:00
rune stubbe
2b49ee823d Nanite changes to support prestreaming
#rb jeremy.moore, matt.hoffman
#lockdown michal.valient
#preflight 61583fa15631d9000132f55d

#ROBOMERGE-AUTHOR: rune.stubbe
#ROBOMERGE-SOURCE: CL 17701503 via CL 17969695 via CL 18366584 via CL 18366678
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18366745 by rune stubbe in ue5-release-engine-test branch]
2021-12-03 02:41:20 -05:00
jon nabozny
3e478185e0 Moved optional GPU memory over to dynamic payload allocator + various CPU/threading optimizations (avoid expensive contention grabbing per instance render data buffer unless absolutely necessary). Saves upwards of ~222MB GPU memory in Frosty, and ~840MB GPU memory if world partition is disabled (4x more instances loaded).
#rb ola.olsson
#preflight 614a1091286e3b00010e7380
[FYI] brian.karis, rune.stubbe, jason.nadro, krzysztof.narkowicz, andy.firth
#lockdown michal.valient

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 17588680 via CL 17950709 via CL 18364633 via CL 18364726
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364781 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:38:54 -05:00
jon nabozny
1044ec5252 Moved per instance local bounds and Nanite hierarchy offset over to optional sidecar data, and updated all areas to source from the correct data + refactored GPU Scene to populate the new arrays correctly (the only current user of them). Also removed per instance flags in favor of dynamically deriving the important bits on GPU Scene upload. Reduces size of FPrimitiveInstance from 80 bytes down to 48 bytes (single 4x3 float FRenderTransform remains, could be 2x float4s with FCompressedTransform in the future).
#preflight 6138020f25e54000015502f6
#rb brian.karis, krzysztof.narkowicz
[FYI] daniel.wright, ola.olsson, rune.stubbe

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 17488104 via CL 17933105 via CL 18363029 via CL 18363080
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18363108 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 20:49:23 -05:00
brett miller
7c0c32d75a GeometryCollectionComponent
-- added ForceMotionBlur property to make the Nanite scene proxy think that the geometry collection is always moving so that motion blur optimizaztion is forced to evaluate motion.

[FYI] graham.wihlidal,jack.oakman,matt.hoffman,yafes.sahin
#deadend
#preflight 613a81bd48c4a400012d99b2

#ROBOMERGE-AUTHOR: brett.miller
#ROBOMERGE-SOURCE: CL 17477454 via CL 17926793 via CL 18361971 via CL 18362051
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18362115 by brett miller in ue5-release-engine-test branch]
2021-12-02 18:57:44 -05:00
tyson brochu
5487c2caff Fracture tool: restore Hide/Unhide button functionality. In UGeometryCollectionComponent, if a Hide array is not available in the GeometryCollection, use the Visible array to determine visibility.
#jira UE-135935
#rnx
#rb cedric.caillaud
#preflight 619fd320f70a9e92db88f4c1

#ROBOMERGE-AUTHOR: tyson.brochu
#ROBOMERGE-SOURCE: CL 18296026 in //UE5/Release-5.0/... via CL 18296032
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18296033 by tyson brochu in ue5-release-engine-test branch]
2021-11-25 13:38:07 -05:00
chris caulfield
714f8a13fd Chaos - fix GeometryCollectionComponent with null RestCollection
#rb trivial
#jira none

#ROBOMERGE-AUTHOR: chris.caulfield
#ROBOMERGE-SOURCE: CL 18275729 in //UE5/Release-5.0/... via CL 18275797
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18275813 by chris caulfield in ue5-release-engine-test branch]
2021-11-23 16:50:50 -05:00
jimmy andrews
90be1099a3 clear the explodedvectors from geometry collections on beginplay, so they don't persist through simulation
#jira UE-129131
#rb brice.criswell
#rb david.hill
#rnx

#ROBOMERGE-AUTHOR: jimmy.andrews
#ROBOMERGE-SOURCE: CL 18266187 in //UE5/Release-5.0/... via CL 18266220
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18266231 by jimmy andrews in ue5-release-engine-test branch]
2021-11-22 21:18:29 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00
devon penney
37467b793f fix cis
#rb none
#jira none

#ROBOMERGE-AUTHOR: devon.penney
#ROBOMERGE-SOURCE: CL 17914047 in //UE5/Release-5.0/... via CL 17914065
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17914084 by devon penney in ue5-release-engine-test branch]
2021-10-25 17:35:57 -04:00
devon penney
13cacfe33e add query for global matrices used by niagara
also fixes horde
#rb none
#jira none

#ROBOMERGE-AUTHOR: devon.penney
#ROBOMERGE-SOURCE: CL 17913281 in //UE5/Release-5.0/... via CL 17913300
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17913319 by devon penney in ue5-release-engine-test branch]
2021-10-25 17:06:59 -04:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
andrew davidson
57beb335f2 Merging //UE5/Dev-LargeWorldCoordinates [at] 17581892 to //UE5/Main
#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 17595295 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)

[CL 17595306 by andrew davidson in ue5-release-engine-test branch]
2021-09-22 10:01:48 -04:00
brett miller
57abd6e620 GeometryCollectionComponent
-- Removal shrinks for bottom of geometry instead of CoM

#jira none
#rb brice.criswell
[FYI] jack.oakman
#okforgitbug internal, public

#ROBOMERGE-AUTHOR: brett.miller
#ROBOMERGE-SOURCE: CL 17527239 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17527268 by brett miller in ue5-release-engine-test branch]
2021-09-15 17:18:16 -04:00
dmitriy dyomin
eee06e854c Fixed Geometry collection rendering issues on mobile
#jira UE-126462

#ROBOMERGE-AUTHOR: dmitriy.dyomin
#ROBOMERGE-SOURCE: CL 17502442 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17502460 by dmitriy dyomin in ue5-release-engine-test branch]
2021-09-14 05:52:12 -04:00
aurel cordonnier
7f517562d5 Merge from Release-Engine-Staging @ 17438845 to Release-Engine-Test
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17439044 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-06 12:23:53 -04:00
brett miller
0e905cf96e FractureTool
-- Additional Undo converage
-- Embedded geometry works with explode
-- Selectable embedded geometry

#jira UE-121974
[FYI] brice.criswell
#preflight 6135505079ce170001469648

#ROBOMERGE-AUTHOR: brett.miller
#ROBOMERGE-SOURCE: CL 17435055 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17435056 by brett miller in ue5-release-engine-test branch]
2021-09-05 20:37:59 -04:00
jimmy andrews
8630aec8da prevent rendering crash if mesh gets into a bad state where all geometry is hidden (by un-hiding everything if that case occurs)
#rnx
#preflight 613121d879ce170001d20414

#ROBOMERGE-SOURCE: CL 17412594 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17412602 by jimmy andrews in ue5-release-engine-test branch]
2021-09-02 22:24:58 -04:00
graham wihlidal
596b78798c Removed per instance Nanite imposter flag and changed code to fetch it from the primitive flags instead. Also removed partially implemented per instance cast shadow flag in favor of the correct one on primitive flags.
#rb rune.stubbe
[FYI] brian.karis
#preflight 6130430317a8610001a7d102

#ROBOMERGE-OWNER: graham.wihlidal
#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 17397605 via CL 17397964
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17397969 by graham wihlidal in ue5-release-engine-test branch]
2021-09-02 00:54:16 -04:00
brett miller
73c0f448a7 GeometryCollectionProximityUtility
-- New algorithm, faster, more robust

#jira UE-121975
#rb jimmy.andrews
#preflight 612efd95b6b29c0001239fa6

#ROBOMERGE-SOURCE: CL 17382962 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17382968 by brett miller in ue5-release-engine-test branch]
2021-09-01 01:43:26 -04:00
brett miller
d84b2a0e45 GeometryCollectionComponent
-- Corrected motion blur problem when cache scrubbing in StaticPose mode

[FYI] jack.oakman,brice.criswell
#preflight 612ee3586256b10001efc6c1

#ROBOMERGE-SOURCE: CL 17381861 via CL 17382101
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17382142 by brett miller in ue5-release-engine-test branch]
2021-08-31 23:27:01 -04:00
jimmy andrews
eb39f94bcf fix Explode Amount slider
Specifically, change UGeometryCollectionComponent::OnCreatePhysicsState's EnsureDataIsCooked() call to just CreateSimulationData(), so we just update the sim data without also re-loading the serialized data (which had some editor/UI specific data discarded)

#rb brett.miller
#rnx
#preflight 612ed65675bca20001e64877

#ROBOMERGE-SOURCE: CL 17381541 via CL 17381917
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17381936 by jimmy andrews in ue5-release-engine-test branch]
2021-08-31 23:01:20 -04:00