shader 编写指南

本文用于记录虚幻引擎图形开发中注意的事项,涉及到 Mesh 绘制及后处理两部分。

网格体绘制

https://docs.unrealengine.com/zh-CN/Programming/Rendering/MeshDrawingPipeline/index.html

后处理 Shader

编写类继承 TRenderingCompositePassBase 覆写方法

class X : public TRenderingCompositePassBase<1, 1>
{
public:
    virtual void Process(FRenderingCompositePassContext& Context) override;
    virtual FPooledRenderTargetDesc ComputeOutputDesc(EPassOutputId InPassOutputId) const override;
    virtual void Release() override { delete this; }
};
  • Process 主流程,设置视口、设置着色器参数、渲染
  • ComputeOutputDesc 输出材质

Shader 本身对应的类