现在的位置: 首页 > 综合 > 正文

OpenGL批次渲染

2019年11月12日 ⁄ 综合 ⁄ 共 474字 ⁄ 字号 评论关闭

用10000次glDrawElement绘制1个三角形,其速度远小于用1次glDrawElement绘制10000个三角形。所以尽量把能够同时绘制的顶点都通过一个glDrawElement等函数来绘制可以大大提高渲染效率。

  使用批次渲染技术有几个要点,可以同时渲染的顶点有几下几个要求:

  1. Primitive须相同,glDrawElements第1个参数为mode,所以显然Primitive必须相同,才能放置在同一个调用中来渲染。

  2. 纹理须相同,1次glDrawElement只能使用一组Texture,所以纹理必须相同。

  考虑到不启用Alpha混合渲染速度会快很多,所以可以考虑以下第3点:

  3. 按是否需要alpha混合来分组顶点。

  另外在渲染时,必须先渲染所有不透明物理再渲染透明物体才能产生正确的渲染。另外在2D引擎中,为了保证父子结点顺序的正确,须开启深度测试,根据结点的渲染顺序设置z值,越早渲染的结点z值越大(越易被覆盖)。

http://www.cnblogs.com/tekkaman/p/3564736.html

抱歉!评论已关闭.