Opengl es OpenGL和glScalef

Opengl es OpenGL和glScalef,opengl-es,Opengl Es,我用OpenGL绘制了一些类似这样的四边形: _______ _______ | || | | || | | || | |_______||_______| 目前,我使用手动计算的firstQuad.pos.x+width绘制第二个四边形。但当我想在中心点缩放它们时,我想知道使用计算值是正确的方法,还是逐个使用GLTRANSTEF,然后使用GLTRANSTEF到它们的中心,然后使用glScalef来缩放它们?或者怎样做

我用OpenGL绘制了一些类似这样的四边形:

 _______  _______
|       ||       |
|       ||       |
|       ||       |
|_______||_______|

目前,我使用手动计算的firstQuad.pos.x+width绘制第二个四边形。但当我想在中心点缩放它们时,我想知道使用计算值是正确的方法,还是逐个使用GLTRANSTEF,然后使用GLTRANSTEF到它们的中心,然后使用glScalef来缩放它们?或者怎样做才是正确的

除非您根据变换更新四边形的位置
firstQuad
,否则必须使用所述的GL矩阵操纵功能。我假设您在这里使用的是旧式GL(2.1及更早版本),现代版本不再提供矩阵操作功能


您必须了解的是,GL必须被视为基础和原点上的变换,用于进一步的绘制调用,直到使用
glPopMatrix()

重置为以前的状态,谢谢,我想我使用的是openGL ES 1,因为我现在不使用着色器,问题是当四边形位于x:0 y:55位置时,I写代码:glTranslatef(0,55);glScalef(值,值,1.0);(值每秒增加0.1,)它只是从0.0缩放到0.55,我可以看到它从0.0移动到0.55,这不是我想要的,我想要它在0.55位置缩放,怎么做?