2014-12-07 19:09:38 -05:00
|
|
|
// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
|
2014-03-14 14:13:41 -04:00
|
|
|
|
|
|
|
|
#include "RendererPrivate.h"
|
|
|
|
|
#include "ScenePrivate.h"
|
|
|
|
|
#include "PostProcessOutput.h"
|
|
|
|
|
|
|
|
|
|
FRCPassPostProcessOutput::FRCPassPostProcessOutput(TRefCountPtr<IPooledRenderTarget>* InExternalRenderTarget)
|
|
|
|
|
: ExternalRenderTarget(InExternalRenderTarget)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void FRCPassPostProcessOutput::Process(FRenderingCompositePassContext& Context)
|
|
|
|
|
{
|
|
|
|
|
const FRenderingCompositeOutputRef* Input = GetInput(ePId_Input0);
|
|
|
|
|
|
|
|
|
|
if(!Input)
|
|
|
|
|
{
|
|
|
|
|
// input is not hooked up correctly
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// pass through
|
|
|
|
|
PassOutputs[0].PooledRenderTarget = Input->GetOutput()->PooledRenderTarget;
|
|
|
|
|
|
|
|
|
|
check(ExternalRenderTarget);
|
|
|
|
|
*ExternalRenderTarget = PassOutputs[0].PooledRenderTarget;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
FPooledRenderTargetDesc FRCPassPostProcessOutput::ComputeOutputDesc(EPassOutputId InPassOutputId) const
|
|
|
|
|
{
|
|
|
|
|
FPooledRenderTargetDesc Ret = PassInputs[0].GetOutput()->RenderTargetDesc;
|
|
|
|
|
|
|
|
|
|
Ret.DebugName = TEXT("PostProcessOutput");
|
|
|
|
|
|
|
|
|
|
return Ret;
|
|
|
|
|
}
|