小编nil*_*pin的帖子

glUseProgram()如何在硬件级别工作?

  1. 我想(我不确定),每当我们调用glUseProgram()时,顶点着色器,frag着色器,几何着色器等都被加载到GPU中相应类型处理器的程序存储器中(例如顶点着色器 - >顶点着色器处理器) .
    但我也发现这种"装载"发生的速度令人惊讶.尽管拥有复杂的渲染管道和多个着色器,但游戏通常能够提供非常好的FPS(1),这意味着程序加载可能每秒发生数千次.
    我是否正确地思考这是如何运作的?如果是的话,我真的低估了GPU的功能吗?
  2. (与(1)相关的迷你问题)在哪里可以找到有关内部GPU总线带宽与性能(或FPS)之间相关性的更多信息?
  3. 另一个迷你问题)是在客户端还是在设备上编译着色器?
  4. 后编译,是存储在GPU(共享)内存中的着色器程序,还是大到足以容纳许多着色器的处理器缓存?

opengl

2
推荐指数
1
解决办法
265
查看次数

标签 统计

opengl ×1