OpenGL:使用 FTGL 和纹理

发布于 2024-11-05 09:48:37 字数 155 浏览 0 评论 0原文

当使用 FTGL 纹理字体时,一切都工作正常,直到我在程序中的其他地方使用另一个纹理。然后字体的原始纹理似乎丢失了,结果字符被绘制为黑点。在使用了 glTexEnvf 的各种参数之后,我认为问题很简单,字体在写入时不会加载其默认纹理。

有没有办法在写入之前访问此默认纹理并绑定它?

When using FTGL texture fonts, everything works perfectly until I use another texture somewhere else in my program. Then the original texture of the font seems to be lost, and as a consequence, the characters are drawn as black dots. After playing with the various parameters of glTexEnvf, I think the problem is simply that the font doesn't load its default texture back when writing.

Is there a way to access this default texture and bind it before writing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

╰◇生如夏花灿烂 2024-11-12 09:48:37

围绕您的调用来渲染字体

  glPushAttrib(GL_ALL_ATTRIB_BITS);

尝试使用和

  glPopAttrib();

(如 rotoglup 建议的那样。)

Try surrounding your calls to rendering the font with

  glPushAttrib(GL_ALL_ATTRIB_BITS);

and

  glPopAttrib();

(as rotoglup suggests.)

花期渐远 2024-11-12 09:48:37

我从未使用过 FTGL,但您可能只是遇到了活动纹理单元的问题。

您是否尝试使用 0 以外的纹理单元作为您自己的纹理并将 GL_TEXTURE0 留给 FTGL ?

如果您需要,相关文档位于此处

I've never used FTGL but you could simply be having problems with the active texture unit.

Did you try using a texture unit other than 0 for your own textures and leaving GL_TEXTURE0 to FTGL ?

The relevant documentation is here if you need it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文