Color gradingpostprocess
Efficient implementation of custom grading/adding custom post process pass
-
Look at deferred decals/deferred decal mesh (PostProcessDeferredDecals.cpp & PostProcessMeshDecals.cpp)
-
Look at RenderMeshDecals()
-
Look at FDecalRendering::BuildVisibleDecalList
-
Also look at possibly following UDecalComponent()
-
Derive from USceneComponent instead of UPrimitiveComponent and manually add the color grade sphere to a list on FScene in CrateRenderState_Concurrent()
-
FDeferredShadingSceneRenderer::Render()
-
GCompositionLighting.ProcessAfterBasePass(RHICmdList, Views[ViewIndex])
-
FCompositionLighting::ProcessAfterBasePass()
-
Sets up composition graph for deferred decals and ambient occlusion
-
Deferred decals are done with normal rendering
-
Ambient occlusion can be done with Compute shader. Look at AddPostProcessingAmbientOcclusion() for compute shader version of a postprocess pass
-
Actual rendering/processing happens in FRCPassPostProcessDeferredDecals::Process() or FRCPassPostProcessAmbientOcclusion::Process()
-