2010-05-20 2 views
1

Допустим, у меня есть сцена с четырьмя кубиками. Как я могу повернуть/перевести только два из этих кубов в OpenGL, не меняя других, используя glrotatef anf gltranslate? Я не хочу определять свои собственные однородные координаты.Как повернуть или перевести экземпляры отдельных объектов в OPENGL?

+0

ли вы посмотреть в glPushMatri x() и glPopMatrix()? –

ответ

5
  1. Вы рисуете свои первые два кубика, как обычно
  2. раздвинуть вид-модель матрицы (glPushMatrix(GL_MODELVIEW_MATRIX))
  3. Вызов glRotate/glTranslate настроить вращение двух кубов, которые вы хотите сделать по-другому
  4. Нарисуйте два другие кубов
  5. Pop матрицы оригинального вида-модель (glPopMatrix(GL_MODELVIEW_MATRIX))
+1

Согласен, за исключением того, что glPushMatrix и glPopMatrix не принимают параметр. Они работают в зависимости от того, какой матричный стек является текущим (на основе glMatrixMode). –

Смежные вопросы