问题描述
|
一帧可以在ipad上绘制多少个最大三角形。此外,用于绘制这些三角形的gl调用次数是否有限制?
解决方法
在iPad上遇到的三角形总数的唯一限制是在内存大小以及希望渲染速度方面。发送的顶点越多,应用程序将使用的内存就越多,并且渲染速度就越慢。
例如,在基准测试中,我能够使用OpenGL ES 1.1平滑阴影,单个光源,存储在顶点缓冲对象(VBO)中的几何图形以及由GLshorts表示的顶点,在iPad 1上每秒推送1,800,000个三角形最小化总大小。 iPad 2的速度明显快于此速度,尤其是当您开始在片段着色器中执行更复杂的操作时。根据这个数字,我可以估算出,如果我想在iPad 1上以60 FPS进行渲染,则场景几何中的三角形要少于30,000个。
OpenGL ES 2.0着色器由于复杂程度不同而使事情变得更复杂,但是它们启用了新的效果,并且可能允许您使用更少的三角形来实现与固定功能管线相同的图像质量。
再举一个例子,在这个问题中,Davido拥有一个模型,该模型具有大约900,000个三角形,他能够在iPad 2上以接近10 FPS的速度进行渲染。在我的回答中,我还提出了一些几何优化技术,我发现当您最大化设备上的Tiler利用率时,会对OpenGL ES 1.1渲染产生重大影响。