Matching color in render texture that is the result of a SceneCapture2D with original scene render

I have captured my scene from my first person camera position using a SceneCapture2D in order to use the resulting texture in a post process material.

I noticed considerable color differences between the scene rendered by the camera and the scene captured by the SceneCapture2D, which is obviously not what I want.

I found this forum post Postprocessing pipeline is FUBAR! - Feedback for Unreal Engine team - Unreal Engine Forums in which the same issue was described and a solution to get matching colors was given. Namely:

SceneCapture2D component - set CaptureSource to LDR

RenderTarget asset - HDR off, TargetGamma 2.2

Inside postprocess material - SceneTexture’s SamplerType is LinearColor

I followed these steps but if I set my SamplerType to LinearColor I get an error in my material “Error [SM5] (Node TextureSample) TextureSample> Sampler type is Linear Color, should be Color for /Game/Textures/SceneColor.SceneColor”

The material still renders correctly (except for an unsightly vignette which I guess is trying to tell me there is a problem).

The issue is that unless I set the sampler type to linear color I don’t get a color match with the render from the first person camera (which is obviously the result I desire).

I have attached 3 screen grabs of the different renders:

RenderFirstPersonCamera - The scene rendered with no post process material
PostProcessTextureSample_LinearColorSampleType - The scene rendered with post process material that samples the output from the SceneCapture2D rendertarget using a linear color sample type and outputs the result at each pixel
PostProcessTextureSample_ColorSampleType - The scene rendered with post process material that samples the output from the SceneCapture2D rendertarget using a color sample type and outputs the result at each pixel

You can see from the screenshots that PostProcessTextureSample_LinearColorSampleType.png matches the colors of the first person camera shot. Unfortunately it has the unsightly error vignette.

Is there any way to ignore the error and get rid of the vignette? If not is there an alternative way of getting the colors to match?

Regards,

Phil

Hey PhilMaguire -

From the initial directions that you were following use SceneTexture: PostProcessInput0 instead of SceneTexture:SceneColor and you should be able to set it as Linear Color. The Vingette is indeed there to show that the Post Process can not be rendered, its a visual error message.

Thank You

Eric Ketchum