1 在C++层中使用FSceneRenderTargets

因为FSceneRenderTargets类处于文件SceneRenderTargets.h文件中,而SceneRenderTargets.h又处于UE的私有文件夹中,所以我们需要将模块添加到项目的私有依赖关系中。

1.1 修改项目或者插件的*.Build.cs文件

在项目或者插件的*.Build.cs中的PrivateDependencyModuleNames中加入以下内容:

PrivateDependencyModuleNames.AddRange(
    new string[]
    {
        "Renderer",
        "RenderCore",
        "RHI"
    }
    );

1.2 包含头文件

在需要使用SceneRenderTargets的文件中包含以下头文件:

#include "Runtime/Renderer/Private/PostProcess/SceneRenderTargets.h"

重新编译项目,发现可以编译通过了!

参考链接

https://answers.unrealengine.com/questions/17862/access-color-and-depth-buffer-of-each-frame.html