1

我用OpenGL画了一些这样的四边形:

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

目前我使用手动计算的 firstQuad.pos.x + 宽度绘制第二个四边形。但是当我想在中心点缩放它们时,我想知道这是使用计算值的正确方法,还是一个一个地使用 glTranslatef,然后 glTranslatef 到它们的中心,然后使用 glScalef 来缩放它们?或者如何做对?

4

1 回答 1

2

除非您firstQuad根据转换更新四边形的位置,否则您将不得不使用您所描述的 GL 矩阵操作函数。我假设您在这里使用的是旧版 GL(2.1 和更早版本),现代版本不再提供矩阵操作功能。

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

于 2012-09-07T10:58:15.113 回答