Commit Graph

13 Commits

Author SHA1 Message Date
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
Charles deRousiers
df10a2c5ff Add FStrataIntegrationSettings for holding all configuration used during directoinal/sky integration (rough diffuse, forced roughnes, ...)
#rb none
#jira none
#fyi sebastien.hillaire
#preflight 6256d97c1543022eed407d18

[CL 19739619 by Charles deRousiers in ue5-main branch]
2022-04-13 10:23:39 -04:00
Charles deRousiers
2257ad3325 Fix/Add split screen & VR support for Strata (i.e., Tiling/Lighting/SSS/Distortion).
This CL split the resources shared between views (non-buffer/tiled data) and resources unique to view (e.g., tile data). This is to ease overall setup, but we might re-regroup them later.

#rb none
#jira none
#preflight 62488f4d927e60e3418751db
#fyi sebastien.hillaire

[CL 19601993 by Charles deRousiers in ue5-main branch]
2022-04-02 14:31:01 -04:00
Charles deRousiers
a02d41c4ee Renamed PROJECT_STRATA into STRATA_ENABLED.
This avoids to define STRATA_ENABLED as 'env. define' for all global shaders needing a Strata specific path.

#rb none
#jira none
#fyi sebastien.hillaire
#preflight 62151b25797dbbeb472ae2eb

[CL 19074999 by Charles deRousiers in ue5-main branch]
2022-02-22 12:35:58 -05:00
Sebastien Hillaire
17c9599db6 Fix for debug lighting on probes to work with Strata
#rb none
#preflight https://horde.devtools.epicgames.com/job/620d00026202a22eede3ff36
#fyi charles.derousiers

[CL 19013319 by Sebastien Hillaire in ue5-main branch]
2022-02-16 08:50:28 -05:00
sebastien hillaire
f8e0092b8b New start material buffer: 2 uint using rop and the rest is written through UAV.
Huge optimisation for console.

#rb charles.derousiers

#ROBOMERGE-AUTHOR: sebastien.hillaire
#ROBOMERGE-SOURCE: CL 18309039 in //UE5/Release-5.0/... via CL 18309083
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18309131 by sebastien hillaire in ue5-release-engine-test branch]
2021-11-29 09:31:58 -05:00
Sebastien Hillaire
c0e7df41b3 Fixed lighting debug probes to not render in refelction captures.
#rb none

[CL 16585997 by Sebastien Hillaire in ue5-main branch]
2021-06-08 08:19:22 -04:00
Sebastien Hillaire
63ed5bc5d3 Added in shader depth test for lighting debug probe with starta.
#rb none

[CL 16512332 by Sebastien Hillaire in ue5-main branch]
2021-06-01 04:03:25 -04:00
Sebastien Hillaire
fc1f090fe3 Added support for starta on debug lighting probes.
Shootergame compiled.

#rb none
#fyi charles.derousiers

[CL 16510700 by Sebastien Hillaire in ue5-main branch]
2021-05-31 16:19:28 -04:00
Sebastien Hillaire
da61bf4824 Renamed VisualizeIndirectLighting to VisualizeLightingOnProbes and made the name consistent on ui and cvar.
#rb none

#ushell-cherrypick of 16505098 by Sebastien.Hillaire

[CL 16508789 by Sebastien Hillaire in ue5-main branch]
2021-05-31 08:56:02 -04:00
Sebastien Hillaire
2e71d41160 Debug indirect lighting probes now write velocity for improved stability.
#rb none

[CL 16466473 by Sebastien Hillaire in ue5-main branch]
2021-05-26 06:26:05 -04:00
Sebastien Hillaire
353097400c Added UI for VisualiseIndirectLighting using probes.
#rb none

[CL 16466214 by Sebastien Hillaire in ue5-main branch]
2021-05-26 05:42:14 -04:00
Sebastien Hillaire
ed4696500d Add debug probes pass to better debug lighting and reflections.
#rb charles.derousiers

[CL 16465629 by Sebastien Hillaire in ue5-main branch]
2021-05-26 04:46:16 -04:00