glclearcolor在哪个库里多高

举个地球人都听得懂的例子:


你想画蓝天白云那么先得画个蓝天 rgb(0,0,255)。
这时候你有两个办法用 glClearColor + glClear,或者画一个全屏的矩形他们看上去是一样的。

然而clear 这个操作在 gpu 上更快,性能更好也更节省带宽。

原理:可以大概认为 clear 改的是 cache 里的值并不会真得写到显存里,所以特别快cache 和 shader 的执行单元离得近,显存和 shader 的執行单元离得远能少走点路就少走点路。

前面说的都是 gpu 内部实现的优化至于 API 层面,不管是 gl 还是 d3d 还是 vulkan都会有这么个优化。

}
  1. 清除颜色缓冲区的作用是防止緩冲区中原有的颜色信息影响本次绘图(注意!即使认为可以直接覆盖原值,也是有可能会影响的)当绘图区域为整个窗口时,就是通瑺看到的颜色缓冲区的清除值就是窗口的背景颜色。所以这两条清除指令并不是必须的:比如对于静态画面只需要设置一次,比如不需要背景色/背景色为白色4. glClear 比手动涂抹一个背景画布效率高且省力,所以通常使用这种方式

著作权归作者所有。商业转载请联系作者获嘚授权非商业转载请注明出处。

}

这两个函数都可以设置颜色看起来似乎是一样的。

glClear可以用来清除屏幕颜色如下用法:

它将屏幕上的所有像素点都还原为“底色”,默认为黑色

glClearColor()就是用来设置这个“底色”的,即所谓的背景颜色
glColor则用来设置画笔的颜色,即绘图颜色

关于glColor的用法可参考:

}

我要回帖

更多关于 库里多高 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信