Files
UnrealEngineUWP/Engine/Source/Runtime/RenderCore
krzysztof narkowicz f04ce1caad Fixed rendering corruption and crashes when r.DoInitViewsLightingAfterPrepass 1. This was caused by using FGlobalDynamic(Vertex/Index/Read)Buffer before it was committed (also commit was overlapping the parallel draw cmd list):
* IntiViews
* Dispatch prepass parallel cmd list (flickering, as global buffers weren't committed).
* InitShadows.
* Commit global buffers (race condition and potential crash).

This was fixed by:
* Renamed FNiagaraGlobalReadBuffer to FGlobalDynamicReadBuffer and moved it out from Niagara.
* Removed all global buffer singletons and placed them inside appropriate renderers as static members.
* They are also separated into two - one for InitViews and one for InitShadows, so we can dispatch prepass while writing to the shadow global buffers.
* All global buffers are now passed as a parameter and/or through mesh collector.

#jira UE-69167
#rb Rolando.Caloca
#rnx

#ROBOMERGE-OWNER: ryan.gerleve
#ROBOMERGE-AUTHOR: krzysztof.narkowicz
#ROBOMERGE-SOURCE: CL 4871865 in //UE4/Main/...
#ROBOMERGE-BOT: ENGINE (Main -> Dev-Networking)

[CL 4884269 by krzysztof narkowicz in Dev-Networking branch]
2019-02-04 12:25:41 -05:00
..