在OpenGL中,可以使用glPushMatrix()函數將當前矩陣壓入堆棧中保存起來,以便后續可以在此基礎上進行變換操作。在進行完變換后,可以使用glPopMatrix()函數將保存的矩陣彈出堆棧恢復到原來的狀態。
示例代碼如下:
void drawObject() {
// 保存當前矩陣
glPushMatrix();
// 進行變換操作
glTranslatef(1.0f, 2.0f, 3.0f);
glRotatef(45.0f, 0.0f, 1.0f, 0.0f);
// 繪制對象
// ...
// 恢復原來的矩陣狀態
glPopMatrix();
}
在以上示例代碼中,glPushMatrix()函數用于保存當前的矩陣狀態,然后進行平移和旋轉變換操作,最后使用glPopMatrix()函數將保存的矩陣狀態彈出堆棧,恢復到原來的狀態。