Commit Graph

30 Commits

Author SHA1 Message Date
Ola Olsson
08ee476c12 Convert ReflectionEnvironmentRealTimeCapture to not use DrawDynamicMeshPass to stop using workaround path.
#preflight 60b4e791f45a940001c99436
#rb Sebastien.Hillaire

[CL 16509280 by Ola Olsson in ue5-main branch]
2021-05-31 10:59:43 -04:00
Andrew Davidson
3ddc3a4da3 Merge up from //UE5/Dev-LargeWorldCoordinates
#rb none

[CL 16211417 by Andrew Davidson in ue5-main branch]
2021-05-05 15:07:25 -04:00
aurel cordonnier
50944fd712 Merge UE5/RES @ 16162155 to UE5/Main
This represents UE4/Main @ 16130047 and Dev-PerfTest @ 16126156

[CL 16163576 by aurel cordonnier in ue5-main branch]
2021-04-29 19:32:06 -04:00
Yuriy ODonnell
3c116b8a7b Fixed compile errors introduced in 16158927
[CL 16162669 by Yuriy ODonnell in ue5-main branch]
2021-04-29 17:55:33 -04:00
zach bethel
cfd61f6e52 Moved GPU scene upload work to RDG.
#rb ola.olsson
[FYI] graham.wihlidal, andrew.lauritzen
#lockdown michal.valient

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

[CL 15932762 by zach bethel in ue5-main branch]
2021-04-06 13:59:36 -04:00
zach bethel
9fc8b1722d Refactored RDG ConvertToUntrackedX functionality into the RDG builder; renamed the operation to 'FinalizeAccess' for clarity, as the resource is considered finalized in the graph and will not transition to any other state. This operation now supports multiple resources, improving performance in cases where multiple resources are finalized back-to-back. Added validation to check that the user don't attempt to use it outside of its finalized state. Fixed up a few places where this assumption was being violated. Minor refactors in various places to use new API.
#rb arne.schober, christopher.waters
#jira none

[CL 15931331 by zach bethel in ue5-main branch]
2021-04-06 11:45:09 -04:00
zach bethel
fcebb9ca5d Fix for untracked RHI access of RDG shadow resource in sky rendering.
#rb sebastien.hillaire

#ROBOMERGE-OWNER: zach.bethel
#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 15903256 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)
#ROBOMERGE-CONFLICT from-shelf

[CL 15907126 by zach bethel in ue5-main branch]
2021-04-02 20:11:25 -04:00
andrew lauritzen
9b0a6fab9d Remove complete shadow maps and replace with direct VSM sampling
- Move VSM parameters into a single uniform buffer; required for base pass rendering.
  - SRVs are initialized to dummy data until they are computed during the frame and subsequently updated before any VSM sampling.
  - Make names and usage more consistent with other UB bindings in mesh passes
- Direct injection of VSM into translucent volume and fog
- Support VSM sampling in forward lighting shaders
  - Enabled and bound currently for translucent forward and single pass water meshes
- Support VSM sampling in sky atmosphere and cloud rendering
  - NOTE: Sky atmosphere LUT pass currently executes before BasePass and ShadowDepths so it will not sample proper data and throw a warning. Moving passes around to address this will come in a future commit.

#rb Brian.Karis, Ola.Olsson, Sebastien.Hillaire, Zachary.Bethel

#ROBOMERGE-OWNER: andrew.lauritzen
#ROBOMERGE-AUTHOR: andrew.lauritzen
#ROBOMERGE-SOURCE: CL 15649858 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v779-15635321)
#ROBOMERGE-CONFLICT from-shelf

[CL 15650486 by andrew lauritzen in ue5-main branch]
2021-03-08 23:14:54 -04:00
chris kulla
2c8d713460 Avoid rebuilding Skylight importance tables for the path tracer each frame.
The path tracer's representation of the skylight texture is now cached across frames. Code such as the realtime capture system or the skylight cubemap management only need to worry avoid invalidating the handle to the texture if it needs to change. The path tracing code will automatically rebuild these textures when they are needed. I also added a cvar (off by default) to force these textures to always be rebuilt to make it easier to benchmark the performance of this step.

Implement MIS Compensation for Skylight importance tables. When MIS is being used, we can tweak the skylight pdf since we know the domain is already well covered by BxDF sampling.

#rb Patrick.Kelly

[CL 15563200 by chris kulla in ue5-main branch]
2021-03-01 18:28:37 -04:00
chris kulla
0a1dbf29dc Fix small typo in CVar description
#trivial
#rb none

[CL 15524189 by chris kulla in ue5-main branch]
2021-02-24 20:13:15 -04:00
Sebastien Hillaire
7d20f82ffa Prefixes for sky, cloud, volumetric fog, water, volume render target and real time sky capture.
#rb none
#fyi Kevin.Ortegren

[CL 15279021 by Sebastien Hillaire in ue5-main branch]
2021-02-02 05:19:56 -04:00
Sebastien Hillaire
41f887b8bb Potential crash fix with real time capture.
#jira https://jira.it.epicgames.com/browse/UE-107270
#rb none

[CL 15237311 by Sebastien Hillaire in ue5-main branch]
2021-01-28 05:47:18 -04:00
Marc Audy
bc88b73a29 Merge Release-Engine-Staging to Main @ CL# 15151250
Represents UE4/Main @ 15133763

[CL 15158774 by Marc Audy in ue5-main branch]
2021-01-21 16:22:06 -04:00
zach bethel
81d46bc35e Fixed cloud RHI validation failures.
#rb sebastien.hillaire
#jira UE-105065
#rnx

[CL 15155170 by zach bethel in ue5-main branch]
2021-01-21 12:46:39 -04:00
Ola Olsson
357b5d5a39 Fold GPU-Scene uploads into one funciton such that dynamic primitives can have instances also & more instance culling prep.
- Moved the primitive instance registration such that we don't end up with added primitives that have no instance index at GPU-Scene update time
- added calls to InstanceCullingManager and disabled implementation.
- GPU scene can now exists without a FScene  instance

#rb graham.wihlidal
#rnx

[CL 15106518 by Ola Olsson in ue5-main branch]
2021-01-15 10:04:26 -04:00
graham wihlidal
862e861803 Added instance culling manager and context (disabled, and without shader files), and tons of hooks all over the renderer in preparation for upcoming GPU culling work.
#author ola.olsson
#rb graham.wihlidal
#fyi brian.karis, rune.stubbe

[CL 15082481 by graham wihlidal in ue5-main branch]
2021-01-14 05:23:34 -04:00
zach bethel
c6cb1e82be Deprecated and gutted FSceneRenderTargets. Moved all textures over to FSceneTextures. Refactored the renderer to use RDG textures from FSceneTextures instead.
#rb arne.schober, luke.thatcher, christopher.waters, kenzo.terelst

[CL 15040082 by zach bethel in ue5-main branch]
2021-01-11 14:49:16 -04:00
zach bethel
695f33573a More removal of view uniform buffer from mesh draw commands. Refactored pass uniform buffers in hair to use RDG.
#rb charles.derousiers

[CL 14889672 by zach bethel in ue5-main branch]
2020-12-09 13:11:49 -04:00
Sebastien Hillaire
d0b0fbd211 Sky light real time capture now does not require a sky atmosphere to work. A mesh with a isSky material or clouds is also enough.
#review-14888598 @kevin.ortegren

[CL 14888597 by Sebastien Hillaire in ue5-main branch]
2020-12-09 11:13:00 -04:00
Marc Audy
a7f9391231 Merge UE5/Release-Engine-Staging @ 14811410 to UE5/Main
This represents UE4/Main @ 14768117

For ReleaseObjectVersion.h
#lockdown Marcus.Wassmer

[CL 14811440 by Marc Audy in ue5-main branch]
2020-11-24 18:42:39 -04:00
Ola Olsson
69d2af54aa Refactored GPU-Scene to store per-view dynamic primitives (for all views) in the one and primitive data buffer, after the regular primitives.
- Added step after dynamic primitives are gathered to allocate a range in GPU scene for the dynamic primitives.
- Moved more GPU-Scene functionality to member functions to clean up references to internal data
- Removed the PrimitiveShaderDataBuffer/Texture from FSceneViewState
- Removed OneFramePrimitiveShaderDataBuffer/Texture from FViewInfo
- Encapsulated the collection of dynamic primitive data for upload to avoid uploading twice and prepare for parallel upload.

#rb Krzysztof.Narkowicz,graham.wihlidal

[CL 14785776 by Ola Olsson in ue5-main branch]
2020-11-19 05:23:44 -04:00
zach bethel
cdd7f80b57 Refactored translucent lighting volume methods out of deferred shading renderer.
#rb none

[CL 14784249 by zach bethel in ue5-main branch]
2020-11-18 20:34:06 -04:00
zach bethel
ae971f3207 Refactored some functions out of scene renderer and into free functions.
#rb sebastien.hillaire
#rnx

[CL 14677263 by zach bethel in ue5-main branch]
2020-11-06 11:50:06 -04:00
zach bethel
e4f467569d Removed scene render target context snapshot system.
#rb arne.schober

[CL 14615156 by zach bethel in ue5-main branch]
2020-10-29 16:32:16 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00