MCPcopy Create free account
hub / github.com/FlaxEngine/FlaxEngine / RenderLightBuffer

Function RenderLightBuffer

Source/Engine/Renderer/Renderer.cpp:182–201  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

180}
181
182void RenderLightBuffer(const SceneRenderTask* task, GPUContext* context, RenderContext& renderContext, GPUTexture* lightBuffer, const GPUTextureDescription& tempDesc)
183{
184 context->ResetRenderTarget();
185 auto colorGradingLUT = ColorGradingPass::Instance()->RenderLUT(renderContext);
186 auto tempBuffer = RenderTargetPool::Get(tempDesc);
187 RENDER_TARGET_POOL_SET_NAME(tempBuffer, "TempBuffer");
188 EyeAdaptationPass::Instance()->Render(renderContext, lightBuffer);
189 PostProcessingPass::Instance()->Render(renderContext, lightBuffer, tempBuffer, colorGradingLUT);
190 context->ResetRenderTarget();
191 if (renderContext.List->Settings.AntiAliasing.Mode == AntialiasingMode::TemporalAntialiasing)
192 {
193 TAA::Instance()->Render(renderContext, tempBuffer, lightBuffer->View());
194 Swap(lightBuffer, tempBuffer);
195 }
196 RenderTargetPool::Release(lightBuffer);
197 context->SetRenderTarget(task->GetOutputView());
198 context->SetViewportAndScissors(task->GetOutputViewport());
199 context->Draw(tempBuffer);
200 RenderTargetPool::Release(tempBuffer);
201}
202
203bool Renderer::IsReady()
204{

Callers 1

RenderInnerFunction · 0.85

Calls 12

ReleaseFunction · 0.85
RenderLUTMethod · 0.80
GetOutputViewMethod · 0.80
GetOutputViewportMethod · 0.80
InstanceClass · 0.50
GetFunction · 0.50
SwapFunction · 0.50
ResetRenderTargetMethod · 0.45
RenderMethod · 0.45
ViewMethod · 0.45
SetRenderTargetMethod · 0.45
DrawMethod · 0.45

Tested by

no test coverage detected