是否可以在使用glBitmap绘制的位图上使用glScalef?

问题描述

我正在制作使用FreeType 2和旧版OpenGL的文本渲染器。问题是,当OpenGL的坐标系为笛卡尔时,FreeType 2的坐标系在左上角具有(0,0)。这意味着我必须翻转位图。我期望glScalef可以与glBitmap一起使用,但是没有效果。谁能告诉我是否可以使用glScalef垂直翻转位图,或者如果不能,请指出其他可以翻转位图的来源(最好是效率最高)?

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glScalef(1.0,-1.0,1.0)
glBitmap(size_x,size_y,xadd,yadd,(glubyte *) bitmap);

解决方法

您要寻找的功能是glPixelZoom

像素缩放系数不限于正值。负缩放因子会反映出有关当前栅格位置的结果图像。

它肯定会对glDrawPixels产生预期的效果。 glBitmap中有一条注释,说它的行为类似于glDrawPixels,但是我找不到关于glPixelZoom是否适用于glBitmap的任何明确声明,所以YMMV。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...