避免每帧重新渲染HUD / GUI元素

时间:2011-01-27 12:53:33

标签: c++ opengl

渲染复杂的HUD元素(从指南针到健康栏的所有内容),尤其是文本框等小部件,在我的游戏中需要大量的FPS。

  • 有没有办法可以预先绘制GUI,缓存它并将其混合到每帧的世界空间? (并在需要时更新缓存)

1 个答案:

答案 0 :(得分:3)

是的,使用alpha通道渲染HUD到纹理,然后在绘制场景时,只需在其上放置带纹理的四边形。您可以使用frame buffer objects渲染纹理。

注意:您不需要使用_EXT,因为帧缓冲对象现在是OpenGL标准的一部分。您还可以获得更多信息here