我用OpenGL绘制了一些这样的四元组:
_______ _______
| || |
| || |
| || |
|_______||_______|
目前我使用firstQuad.pos.x +宽度绘制第二个四边形,这是手动计算的。但是当我想在中心点缩放它时,我想知道它是使用计算值的正确方法,还是使用glTranslatef一个,然后glTranslatef到它们的中心,然后使用glScalef来缩放它们?或者怎么做对吗?
答案 0 :(得分:2)
除非您根据转换更新quad的位置firstQuad
,否则您必须使用所描述的GL矩阵操作函数。我假设你在这里使用遗留GL(2.1及更早版本),现代版本不再提供矩阵操作功能。
您必须了解的是,GL transformation必须被视为基础和原点的转换,将用于进一步的绘制调用,直到重置为具有glPopMatrix()
的先前状态。< / p>