使用批次优化渲染

[使用批次优化渲染]

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

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

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

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

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

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

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

  

你可能感兴趣的:(优化)