Commit Graph

1306 Commits

Author SHA1 Message Date
guillaume abadie
a2c5574494 Allows to control TSR pass to run on asynccompute at thiner granularity
#rb none
#preflight 6295c77b926be5fb68a25cf3

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20434685 via CL 20434689 via CL 20434693
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20434849 by guillaume abadie in ue5-main branch]
2022-05-31 04:53:12 -04:00
guillaume abadie
4e42a66ca9 Allows TSR to upscale separate translucency independently from input resolution
This also implements r.Translucency.ScreenPercentage.Basis to experiment controling the translucency resolution independently from the primary screen percentage

#rb none
#jira UE-152560
#preflight 6294fbc4e61254772f5834a6

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20432059 via CL 20432067 via CL 20432069
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20434142 by guillaume abadie in ue5-main branch]
2022-05-31 01:21:02 -04:00
aleksander netzel
a6237048e1 Fix for IsValid() crash when showing RayTracingDebug:
* When RT debug is enabled we disable translucency but some of the postprocessing materials might use that texture so we need to set correct ViewRect as well.

#jira UE-144066
#rb Tiago.Costa
#preflight 6290d21ad24a7fc585f2c9f4

[CL 20429352 by aleksander netzel in ue5-main branch]
2022-05-30 05:19:22 -04:00
benjamin rouveyrol
7a21ea463f hdr multi window/display support
This improves how the editor deals with displays that have different capabilities (some with HDR, others without).
Centralize where the CVars are accessed
Have the swapchain created in SDR when shown on a SDR display
Make sure color gamut matches the one supported by the platform/swapchain.
Allow Movie scene capture to override the gamut/output format to keep existing behaviour (MovieSceneCapture relies on swapchain data)

#preflight 628baef5183c1e13462a504d
#jira UE-150952
#rb luke.thatcher

[CL 20347067 by benjamin rouveyrol in ue5-main branch]
2022-05-24 09:04:39 -04:00
Sebastien Hillaire
712c172605 Added light grid culling debug pass.
#rb none
#preflight https://horde.devtools.epicgames.com/job/628c8ef7a24685c36f506f40

[CL 20345378 by Sebastien Hillaire in ue5-main branch]
2022-05-24 04:33:36 -04:00
dmitriy dyomin
feb4bda118 Correctly disable Eye Adaptation pass in a mobile post-processing
#rb wei.liu

#ROBOMERGE-AUTHOR: dmitriy.dyomin
#ROBOMERGE-SOURCE: CL 20258578 via CL 20258580 via CL 20258584 via CL 20258587
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20262922 by dmitriy dyomin in ue5-main branch]
2022-05-18 12:52:55 -04:00
zach bethel
3cc87760bd Removed cases of AddCopyToResolveTargetPass which either weren't necessary or weren't performing multisample resolves.
#preflight 628270aa046b81bf93c13e50

[CL 20226032 by zach bethel in ue5-main branch]
2022-05-16 12:09:51 -04:00
guillaume abadie
f899007b0c Allows TSR to output half res when motion blur is disabled.
#rb none
#preflight 627e297234434190054ad847

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20178985 via CL 20178988 via CL 20178995
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20179524 by guillaume abadie in ue5-main branch]
2022-05-13 07:23:22 -04:00
guillaume abadie
7e95316acb Fixes VisualizeLumenScene doing a full-res texture copy of the back buffer when disabled
#rb none
[FYI] Krzysztof.Narkowicz, Daniel.Wright

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20178948 via CL 20178960 via CL 20178961
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20179520 by guillaume abadie in ue5-main branch]
2022-05-13 07:23:11 -04:00
Wei Liu
355707489e Refactor of mobile custom depth/stencil to line up with pc on all mobile platform.
#jira none

#rb Dmitriy.Dyomin
#fyi Serge.Bernier
#preflight 627b87a65d003338d95018bf

[CL 20135905 by Wei Liu in ue5-main branch]
2022-05-11 06:10:52 -04:00
florin pascu
ac6afe8713 Scene Captures are going to be used as textures and sampled in the main scene, so they must remain unflipped.
#rb Allan.Bentham
#preflight 6278fe66822bdc69f0fad9a0

#ROBOMERGE-AUTHOR: florin.pascu
#ROBOMERGE-SOURCE: CL 20101376 via CL 20101399 via CL 20101452 via CL 20101466
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20108679 by florin pascu in ue5-main branch]
2022-05-09 15:15:12 -04:00
guillaume abadie
9aa9e2f14a Uses a Texture2DArray for Debug.TSR.* textures
#preflight 6274b51ade15651eeb4ffef5

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20073343 via CL 20073349 via CL 20073355
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20105784 by guillaume abadie in ue5-main branch]
2022-05-09 13:33:38 -04:00
Wei Liu
24ad7d27c8 Fix a bug of bloom intensity been applied twice.
#jira  UE-151247

#rb Dmitriy.Dyomin
#preflight 62787b554d39623ee67c2fe5

[CL 20099659 by Wei Liu in ue5-main branch]
2022-05-08 22:29:02 -04:00
guillaume abadie
3d91d238ca Fixes crash in TSR when switching r.TSR.History.HighFrequencyOnly
#preflight 62738726c04406dfea71c368

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20055534 via CL 20055552 via CL 20055557
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20061013 by guillaume abadie in ue5-main branch]
2022-05-05 14:06:16 -04:00
guillaume abadie
3b4b5dfa77 Adds an Editor Primitives stat gpu bucket
#rb none
#preflight 62716a75e16e280be615c60e

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20028907 via CL 20029052 via CL 20029067
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20035006 by guillaume abadie in ue5-main branch]
2022-05-03 19:46:54 -04:00
guillaume abadie
0e8d8a4792 Uses a Texture2DArray for TSR history to saves on number of UAVs
#rb none
#preflight 62711d64e16e280be60a0286

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 20024040 via CL 20024043 via CL 20024050
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20024826 by guillaume abadie in ue5-main branch]
2022-05-03 09:58:40 -04:00
Wei Liu
7a856d1cc8 Fix a bug of stencil testing in PPMaterial if MobileSupportFetchBindedCustomStencilBuffer
#jira none

#rb Dmitriy.Dyomin
#preflight 626f471a4e72a74df29343c4

[CL 20006037 by Wei Liu in ue5-main branch]
2022-05-01 22:55:01 -04:00
danny couture
3284500bf7 45s to 35s when booting the editor with cold cache by using PrecompileWithDXC on DOFGatherPass
#rnx
#rb Charles.deRousiers
#preflight none

[CL 19960380 by danny couture in ue5-main branch]
2022-04-28 09:23:55 -04:00
wei liu
ae766258a1 Fix a bug of writing stencil in PPMaterial on mobile.
#jira UE-149937

#rb Dmitriy.Dyomin
#preflight 62666da07e06ec750592b34a
#lockdown Jack.Porter

#p4v-preflight-copy 19900274

#ROBOMERGE-OWNER: wei.liu
#ROBOMERGE-AUTHOR: wei.liu
#ROBOMERGE-SOURCE: CL 19899826 in //UE5/Release-5.0/... via CL 19900340
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19902161 by wei liu in ue5-main branch]
2022-04-25 10:22:27 -04:00
eric mcdaniel
11c6cd8b69 Remove support for PLATFORM_REQUIRES_UAV_TO_RTV_TEXTURE_CACHE_FLUSH_WORKAROUND
- this was working around a system level issue but we no longer support the older SDK versions which had the issue on the impacted platform

- testing
  - ran QAGame TM-DepthOfField on impacted platform as DoF was one of the passes which previously incurred the issue

#rb David.Harvey
#jira UE-124865
#preflight 62631b1d00654785f436a2c8

[CL 19902059 by eric mcdaniel in ue5-main branch]
2022-04-25 10:17:27 -04:00
jason hoerner
af48ea5a98 UE5_MAIN: Multi-view-family scene renderer refactor, part 2. Move FSceneTextures singleton out of RDG blackboard and FSceneTexturesConfig global variable singleton, into FViewFamilyInfo. This is necessary to allow multiple view families to render in a single render graph and a single scene renderer call.
* Existing calls to CreateSceneTextureShaderParameters and similar functions use "GetSceneTexturesChecked", which allows for the possibility that they are reached in a code path where scene textures haven't been initialized, and nullptr is returned instead of asserting.  The shader parameter setup functions then fill in dummy defaults for that case.  The goal was to precisely match the original behavior, which queried the RDG blackboard, and gracefully handled null if scene textures weren't there.  This definitely appears to occur in FNiagaraGpuComputeDispatch::ProcessPendingTicksFlush, which can be called with a dummy scene with no scene textures.  In the future, I may change this so dummy defaults are filled in for FSceneTextures at construction time, so the structure is never in an uninitialized state, but I would like to set up a test case for the Niagara code path before doing that, and the checks aren't harmful in the meantime.
* I marked as deprecated global functions which query values from FSceneTexturesConfig, but they'll still work with the caveat that if you use multi-view-family rendering, the results will be indeterminate (whatever view family rendered last).  There was only one case outside the scene renderer that accessed the globals (depth clear value), which I removed, noting that there is nowhere in the code where we modify the depth clear value from its global default.  I would like to permanently deprecate or remove these at some point.  Display Cluster is the only code that's currently using the multi-view-family code path, and as a new (still incomplete) feature, third party code can't be using it, and won't be affected.

#jira NONE
#rb chris.kulla zach.bethel mihnea.balta
#preflight 6261aca76119a1a496bd2644

[CL 19873983 by jason hoerner in ue5-main branch]
2022-04-22 17:33:02 -04:00
Dmitriy Dyomin
f819c89c21 Support shading models in a mobile deferred shading path. Disabled by default
Requrements:
iOS: A8+
Android VK: more than 4 color attachements, more than 4 input attachments
Android GL: Unsuported - PLS seem to be limited to 128bits on most devices
#rb wei.liu
#preflight 625f866b9c09ef439db7612b

[CL 19861367 by Dmitriy Dyomin in ue5-main branch]
2022-04-22 01:15:27 -04:00
jason hoerner
b19bb6be2f UE5_MAIN: Multi-view-family scene renderer refactor, part 1. Major structural change to allow scene renderer to accept multiple view families, with otherwise negligible changes in internal behavior.
* Added "BeginRenderingViewFamilies" render interface call that accepts multiple view families.  Original "BeginRenderingViewFamily" falls through to this.
* FSceneRenderer modified to include an array of view families, plus an active view family and the Views for that family.
* Swap ViewFamily to ActiveViewFamily.
* Swap Views array from TArray<FViewInfo> to TArrayView<FViewInfo>, including where the Views array is passed to functions.
* FSceneRenderer iterates over the view families, rendering each one at a time, as separate render graph executions.
* Some frame setup and cleanup logic outside the render graph runs once.
* Moved stateful FSceneRenderer members to FViewFamilyInfo, to preserve existing one-at-a-time view family rendering behavior.
* Display Cluster (Virtual Production) uses new API.

Next step will push everything into one render graph, which requires handling per-family external resources and cleaning up singletons (like FSceneTextures and FSceneTexturesConfig).  Once that's done, we'll be in a position to further interleave rendering, properly handle once per frame work, and solve artifacts in various systems.

#jira none
#rnx
#rb zach.bethel
#preflight 625df821b21bb49791d377c9

[CL 19813996 by jason hoerner in ue5-main branch]
2022-04-19 14:45:26 -04:00
Wei Liu
4ff910d037 Fix a bug of fetching depth in mobile separate tranlucent pass with vulkan subpass.
#jira UE-147297

#rb Dmitriy.Dyomin
#preflight 625e7b003e0f6f80ada6ab17

[CL 19805631 by Wei Liu in ue5-main branch]
2022-04-19 05:21:40 -04:00
benjamin rouveyrol
30ea8aca4f Have r.HDR.Display.OutputDevice enum values defined in a single place and replaced hardcoded numbers by enum values.
#preflight 62559eb569015afc27ac1833
#jira UE-148598
#rb eric.mcdaniel

[CL 19784660 by benjamin rouveyrol in ue5-main branch]
2022-04-18 09:20:23 -04:00