问题标签 [opengl-es-3.1]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
80 浏览

opengl-es - 为什么 Compute Shader 会减慢渲染 API 调用速度?

我正在使用计算着色器来处理输入缓冲区数据并使用 imagestore() 将其存储为输出纹理。

执行计算着色器后,我依次进行了 3 次渲染调用。

计算着色器代码:

代码:

在这里,唯一的第二次绘制调用在使用计算着色器后需要更多时间。

如果在 glMemoryBarrier() 之后调用 glFinish(),那么只有 execute_compute() 调用会减慢。为什么计算着色器会减慢后续的绘制调用?glFinish() 真的需要吗?