Files
XCEngine/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetComputeShader.md

687 B
Raw Blame History

OpenGLPipelineState::SetComputeShader()

void SetComputeShader(RHIShader* shader) override;

作用

把一个 shader 作为当前 compute pipeline 的程序来源。

当前实现行为

  • shader 缓存到 m_computeShader
  • shader != nullptr
    • 直接 static_cast<OpenGLShader*>(shader)
    • 把其 GetID() 结果写入 m_computeProgram
  • shader == nullptr,则把 m_computeProgram 置为 0

需要特别注意

  • 没有运行时类型检查
  • 也不验证这个 OpenGLShader 是否真的是 compute program

相关文档