我正在使用 freetype2 加载一个 truetype 字体并构建一个 VBO 来呈现它。它工作正常,但是当我执行 glTranslate 以使文本相对于特定区域(按钮文本)居中时,字符的 uv 似乎正在发生变化。
我已经对此进行了无止境的调试,并且顶点和 uv 缓冲区中的所有值都是正确的。在下面的屏幕截图中,您可以看到未“居中”的文本渲染得很好,但按钮中的文本显示了一些伪影,例如 uv 是否错误。两个缓冲区,居中的缓冲区和左对齐的缓冲区都是等效且正确的,因此当我将文本居中时,必须有其他东西弄乱了渲染。
我将发布一个屏幕截图,然后根据要求添加代码,因为呈现这些控件的逻辑非常大。
http://i.imgur.com/iULIXAU.png
我希望有人能仅对这些信息有所启发,并向我伸出援助之手,因为我真的迷路了。
编辑:另一个奇怪的是,当文本中的字符数是偶数时,文本呈现时没有伪影。但是当它很奇怪时,它会变得混乱。每个字符都是一个带纹理的四边形。