https://blog.csdn.net/yupu56/article/details/50177935
尽管图形是如此简单,为什么我的游戏延迟这么多?
为什么我的游戏加载时间如此之高?
为什么屏幕之间的切换如此之慢?
为什么我游戏的FPS一直很低?
我已经压缩过纹理贴图和精灵了,怎么还那么大?
为什么我的游戏总会崩溃?
为什么我的游戏那么费电?
为什么在手机上运行我的游戏时,手机发热怎么会那么严重?
在游戏开发的某个阶段,我们都会遇到这些问题。我们会试着分析新的图形技术、新的图像压缩技术、新的代码以及一些其他技术。因此,这让我们牺牲了很多宝贵时间,而在最后的最后,或许我们解决了一些棘手的问题亦或是放弃了这些新技术。
在这里,我们会尽量减少这样的常见错误以及缩短困难期。其实我更愿意说忽视Draw Call是粗心大意而不是一个错误。
Draw Calls是什么?
Draw Call仅仅是一条指令!Draw Call指令从CPU传到GPU,渲染一个网格。指令只指向一个被渲染的网格并且不包含任何材质信息。
drawcall是啥?其实就是对底层图形程序(比如:OpenGL ES)接口的调用,以在屏幕上画出东西。所以,是谁去调用这些接口呢?CPU。
在发出指令后,GPU的渲染状态值(材质、纹理、shader等)和所有的顶点数据通过神奇的代码转化为以一个信息,