【发布时间】:2016-08-01 21:36:53
【问题描述】:
我目前正在使用 Freetype 库向我的 opengl es 2.0 应用程序(ios 和 android)呈现文本,我已经到了必须认真考虑性能的地步。我有一个纹理存储(每个字符一个),每当我渲染文本时,字符都会从该纹理区域调用,然后 opengl 绑定到它,将其渲染到屏幕上......对于每个字母!非常低效。所以,我正在寻找方法来加快速度,我的想法之一是预先渲染每个单词而不是每个字母。所以,现在是一个大问题:我如何并排组合纹理?我知道我需要创建一个缓冲区,并且它会以某种方式来自FT_LOAD_CHAR,但我真的不知道更多。
【问题讨论】:
-
“效率很低。”为什么效率很低?
-
您是在问如何从其他 png 中创建一个 png,或者如何仅绘制组合 png 的一部分(纹理“atlas”)?
-
效率非常低,因为将纹理绑定到 OpenGL 的成本相对较高。当你为每个角色都这样做时......不好。目前正在尝试遵循 codetiger 的答案。
标签: opengl-es textures freetype