Commit Graph

414 Commits

Author SHA1 Message Date
dan phillips
f93da41718 platform specific code clean up.
[FYI] ben.woodhouse


#ROBOMERGE-SOURCE: CL 8243883 via CL 8244021
#ROBOMERGE-BOT: (v401-8057353)

[CL 8244067 by dan phillips in Main branch]
2019-08-23 23:22:34 -04:00
sebastien hillaire
bd57e17544 Added possibility to link the height fog lighting to the sky. Need to be enabled per project since it takes an additional ALUs and vertex shader slot.
#rb Krzysztof.Narkowicz


#ROBOMERGE-SOURCE: CL 8223887 via CL 8230130
#ROBOMERGE-BOT: (v401-8057353)

[CL 8230865 by sebastien hillaire in Main branch]
2019-08-23 12:07:16 -04:00
uriel doyon
3591ea5070 Added some metrics to shrink buffer size when Niagara particles go down significantly.
This affects FGlobalDynamicReadBuffer, FGlobalDynamicVertexBuffer and FGlobalDynamicIndexBuffer.

   "r.NumFramesUnusedBeforeReleasingGlobalResourceBuffer"
   Number of frames after which unused global resource allocations will be discarded. Set 0 to ignore. (default=30)

Also added shrinking logic to the FNiagaraDataSet buffers:

   "fx.NiagaraDataBufferMinSize"
   Niagara data buffer minimum allocation size in bytes. (Default=512)

   "fx.NiagaraDataBufferShrinkFactor"
   Niagara data buffer size threshold for shrinking. (Default=3)
   The buffer will be reallocated when the used size becomes 1/F of the allocated size.

#rb shaun.kime, simon.tovey


#ROBOMERGE-SOURCE: CL 8097674 via CL 8108818
#ROBOMERGE-BOT: (v401-8057353)

[CL 8108895 by uriel doyon in Main branch]
2019-08-17 01:37:21 -04:00
ben ingram
6c1771c29d #jira UE-78959
Don't consider VT enabled if only 'r.VirtualTexturedLightmaps' is set (but 'r.VirtualTexturing' is not)
This cvar config is not valid, but still possible to manually set the cvars to this state
#rb none
#lockdown nick.penwarden

#ROBOMERGE-SOURCE: CL 8102070 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v401-8057353)

[CL 8102079 by ben ingram in Main branch]
2019-08-16 17:08:43 -04:00
peter sauerbrei
950ff1fa48 make it so IOS can now pre-compile the PSOs during ESP and pre-compiles all PSOs for a set of scalabilities
#rb thomas.ross


#ROBOMERGE-SOURCE: CL 8068523 via CL 8068528 via CL 8068894 via CL 8094505
#ROBOMERGE-BOT: (v401-8057353)

[CL 8094643 by peter sauerbrei in Main branch]
2019-08-16 13:25:19 -04:00
mickael gilabert
bef29439ec Added csv stats to track RT time easier
#rb none
[FYI] ben.woodhouse
#rnx


#ROBOMERGE-SOURCE: CL 8040907 via CL 8041828 via CL 8044376 via CL 8046905
#ROBOMERGE-BOT: (v400-8057353)

[CL 8066272 by mickael gilabert in Main branch]
2019-08-15 16:59:35 -04:00
dan phillips
6f369e9c3e XboxOne shader libraries are seperated into their own pak files, each one with it's own cache.
[FYI] ben.woodhouse


#ROBOMERGE-SOURCE: CL 8030189 via CL 8041682
#ROBOMERGE-BOT: (v400-8057353)

[CL 8062576 by dan phillips in Main branch]
2019-08-15 13:51:39 -04:00
krzysztof narkowicz
c3f806ef7b New SkyAtmosphere component CLs in FN
Merging using //Fortnite/Main/_to_/UE4/Dev-Rendering
#rb none

Also tested on mobile with Dmitriy.
Improvement and optimisation pending with https://docs.google.com/document/d/17fBBGX_cP9YARfiBU3P9BIElOo2m6IpqJhRXOZvzXa0/edit#heading=h.tuqnyahzdlw8

Integrated / edtigrated CLs are
7555515
7559183
7565353
7577376
7593568
7624000
7785404
7785501
7839046
7861664
7949251
7949481
7951875
7973183


#ROBOMERGE-OWNER: krzysztof.narkowicz
#ROBOMERGE-AUTHOR: sebastien.hillaire
#ROBOMERGE-SOURCE: CL 8020041 via CL 8027701
#ROBOMERGE-BOT: (v400-8057353)

[CL 8062409 by krzysztof narkowicz in Main branch]
2019-08-15 13:46:05 -04:00
shaun kime
e1f79f9200 Back out changelist 7827497 as it broke Niagara rendering as per UE-78484
#jira UE-78484
#tests tested some niagara effects after and looked correct
#rb none
[FYI] zach.bethel

#ROBOMERGE-SOURCE: CL 7841367 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v389-7813075)

[CL 7841368 by shaun kime in Main branch]
2019-08-07 12:18:48 -04:00
zach bethel
c7d4cf7b71 Allow FMeshBatchElement::PrimitiveUniformBuffer to be assigned to the default scene proxy uniform buffer without triggering the GpuScene assert.
#rb Krzysztof.Narkowicz
#jira UE-72116

#ROBOMERGE-SOURCE: CL 7827497 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v389-7813075)

[CL 7827500 by zach bethel in Main branch]
2019-08-06 18:28:42 -04:00
jeremy moore
2b00a4363f #jira UE-78422
Integrated from //UE4/Dev-Rendering
#rb none
#rnx

#ROBOMERGE-SOURCE: CL 7788444 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v388-7785529)

[CL 7788460 by jeremy moore in Main branch]
2019-08-06 10:20:52 -04:00
stu mckenna
77d689dfab - Adjust "r.ReadBuffer.MinSize" to a more reasonable default and add "r.ReadBuffer.AlignSize" to so that new buffers are rounded to a reasonable size
- This fixes massive memory bloat with a Niagara system spawning 10k particles, as each frame we add more particles we were allocating a new buffer.  In the end I saw 94 buffers allocated of varying sizes, the rough memory savings here (at least from a stat POV) is ~70mb.

#rb none
#jira UE-77393
[FYI] shaun.kime, simon.tovey


#ROBOMERGE-SOURCE: CL 7644180 via CL 7644917
#ROBOMERGE-BOT: (v372-7473910)

[CL 7644938 by stu mckenna in Main branch]
2019-07-26 18:39:05 -04:00
marc audy
7996fd30c7 Reorder members to improve packing
#jira
#rnx
#rb Marcus.Wassmer

#ROBOMERGE-SOURCE: CL 7611003 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v372-7473910)

[CL 7611027 by marc audy in Main branch]
2019-07-24 13:49:26 -04:00
zach bethel
7712f5755b Integrated fix for render graph validation error.
#jira UE-77405
#rb none

#ROBOMERGE-SOURCE: CL 7579772 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v372-7473910)

[CL 7579795 by zach bethel in Main branch]
2019-07-23 17:49:47 -04:00
zach bethel
88a7502f0f Hand-integration of ERenderGraphPassFlags enum rename.
#jira none
#rb none

#ROBOMERGE-SOURCE: CL 7461344 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v371-7306989)

[CL 7461347 by zach bethel in Main branch]
2019-07-19 14:19:12 -04:00
zach bethel
53b49dee8a Minor fixes to RenderGraph implementation.
#rb none
#jira none

#ROBOMERGE-SOURCE: CL 7326766 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v371-7306989)

[CL 7326772 by zach bethel in Main branch]
2019-07-16 15:10:54 -04:00
zach bethel
f38aad9da5 Refactored render graph validation logic. Hardened mip generation pass barrier handling. Fixed compute-based mip generation pass helper.
#jira UE-77059
#rb guillaume.abadie

#ROBOMERGE-OWNER: zach.bethel
#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 7324754 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v371-7306989)

[CL 7324765 by zach bethel in Main branch]
2019-07-16 13:08:56 -04:00
michal valient
bfdcead4ed Fixed dereferencing null ptr in FRealtimeGPUProfiler at exit
#jira UE-76546
#rb marcus.wassmer

#ROBOMERGE-SOURCE: CL 7277248 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v369-7254125)

[CL 7277251 by michal valient in Main branch]
2019-07-11 12:57:57 -04:00
zach bethel
564177bd96 Fixed issue where RDG buffer pool would grow unbounded.
#rb guillaume.abadie
#jira UE-76453

#ROBOMERGE-SOURCE: CL 7252701 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v368-7249887)

[CL 7252715 by zach bethel in Main branch]
2019-07-09 17:22:17 -04:00
Marc Audy
656ad034d6 Remove duplicated function
#rb
#rnx
#codereview zach.bethel

[CL 7090361 by Marc Audy in Main branch]
2019-06-19 09:14:52 -04:00
zach bethel
973f445276 Added missing files in integration from main
#rb none
#jira none

#ROBOMERGE-OWNER: zach.bethel
#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 7085723 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)

[CL 7085858 by zach bethel in Main branch]
2019-06-19 00:23:15 -04:00
zach bethel
42846be25b Hand-Integrated fixes from Main:
7064877 - RDG Resource Barrier Fixes and Improvements.

 - Resource barriers are now batched and submitted as a group at the beginning of a pass.
 - UAVs referencing the same underlying resource now only submit a single write barrier instead of a write + N UAV barriers.
 - During a mip generation pass, barriers are not issued for textures (they are implicitly converted to the SubRWBarrier state).
 - Depth / stencil read now transitions to the read state; this allows DSV + SRV to work correctly.

#jira UE-76196
#rb Guillaume.Abadie

7064884 - Fixed RHI resource transitions causing validation failures.

#rb Rolando.Caloca
#jira none

7064898 - Fixed issue where implementation of RHICopyTexture would only copy mip 0, breaking environment probe copies.

#jira UE-76203
#rb Jeremy.Moore


#ROBOMERGE-OWNER: zach.bethel
#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 7082976 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)

[CL 7082994 by zach bethel in Main branch]
2019-06-18 22:23:27 -04:00
richard wallis
750b7d563c Change check() to return success/failure in CheckPSOStringInveribility(). Use this and a new FPipelineCacheFileFormatPSO::Verify() function to decide if we should actually use this PSO in the ShaderPipelineCacheToolsCommandlet expand operation. In non shipping builds also use the verfy function during FPipelineCacheFileFormatPSO::Init() to catch bad PSOs during PSO record runs. E.g use the current check() assert in FPipelineFileCache::CacheGraphicsPSO().
#rb Michael.Trepka, Chris.Bunner


#ROBOMERGE-SOURCE: CL 7062282 via CL 7062284 via CL 7070288
#ROBOMERGE-BOT: (v367-6836689)

[CL 7070515 by richard wallis in Main branch]
2019-06-18 16:20:13 -04:00
zach bethel
879a31dc40 RDG Resource Barrier Fixes and Improvements.
- Resource barriers are now batched and submitted as a group at the beginning of a pass.
 - UAVs referencing the same underlying resource now only submit a single write barrier instead of a write + N UAV barriers.
 - During a mip generation pass, barriers are not issued for textures (they are implicitly converted to the SubRWBarrier state).
 - Depth / stencil read now transitions to the read state; this allows DSV + SRV to work correctly.

#jira UE-76196
#rb Guillaume.Abadie

[CL 7064877 by zach bethel in Main branch]
2019-06-18 13:23:41 -04:00
rolando caloca
83c57c2a0f UE4.23 - Deprecate FUniformBufferRHIParamRef, FIndexBufferRHIParamRef, FVertexBufferRHIParamRef, FStructuredBufferRHIParamRef, FTextureRHIParamRef, FTexture2DRHIParamRef, FTexture2DArrayRHIParamRef, FTexture3DRHIParamRef, FTextureCubeRHIParamRef
#rb none
#jira UE-76364

#ROBOMERGE-SOURCE: CL 7046967 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)

[CL 7047009 by rolando caloca in Main branch]
2019-06-17 13:39:07 -04:00