687 B
687 B
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