OpenGL:使用 FTGL 和纹理
Posted
技术标签:
【中文标题】OpenGL:使用 FTGL 和纹理【英文标题】:OpenGL: using FTGL and textures 【发布时间】:2011-05-05 13:26:41 【问题描述】:当使用 FTGL 纹理字体时,一切正常,直到我在程序的其他地方使用另一个纹理。然后字体的原始纹理似乎丢失了,因此,字符被绘制为黑点。在使用了 glTexEnvf 的各种参数之后,我认为问题只是字体在写入时没有加载其默认纹理。
有没有办法在写入之前访问这个默认纹理并绑定它?
【问题讨论】:
hm,我一直在使用 FTGL,但没有注意到这个问题。从内存中,FTGL 不会改变 glActiveTexture,你是否从 GL_TEXTURE0 改变它的值?您是否尝试使用 Push/PopAttrib 来尝试隔离 FTGL 的 GL 状态和您的应用程序的状态? 【参考方案1】:尝试围绕您的调用来渲染字体
glPushAttrib(GL_ALL_ATTRIB_BITS);
和
glPopAttrib();
(正如 rotoglup 建议的那样。)
【讨论】:
【参考方案2】:我从未使用过 FTGL,但您可能只是在使用活动纹理单元时遇到了问题。
您是否尝试将 0 以外的纹理单元用于您自己的纹理并将 GL_TEXTURE0 留给 FTGL ?
如果您需要,相关文档是here。
【讨论】:
以上是关于OpenGL:使用 FTGL 和纹理的主要内容,如果未能解决你的问题,请参考以下文章