1
所以我想只有一個旋轉的物體,我已閱讀有關如何做,但他們都只是說像這樣其他職位: 1.呼叫glLoadIdentity();
2戰平形狀 3.旋轉lwjgl,只在屏幕上旋轉一個對象?
我試過他們告訴我要做的事,但它似乎對我沒有用處?
if (time != faces.size() - 1 && faces.size() != 1){
if (faces.get(time+1).needsIdentity){
GL11.glLoadIdentity();
System.out.println("The not last identity was set!");
}
System.out.println("got identity");
}else{
if (faces.get(faces.size() - 1).needsIdentity){
GL11.glLoadIdentity();
System.out.println("identity set!");
}
System.out.println("got last identity");
}
GL11.glBegin(GL11.GL_QUADS);
GL11.glColor3f(f.clr.red, f.clr.green, f.clr.blue);
GL11.glVertex3f(f.loc.x - f.x, f.loc.y + f.y, f.loc.z + f.z);
GL11.glVertex3f(f.loc.x + f.x, f.loc.y + f.y, f.loc.z + f.z);
GL11.glVertex3f(f.loc.x + f.x, f.loc.y - f.y, f.loc.z + f.z);
GL11.glVertex3f(f.loc.x - f.x, f.loc.y - f.y, f.loc.z + f.z);
GL11.glEnd();
finished();
}
public void finished(){
GL11.glRotatef(rs.rotx, 1F, 0F, 0F);
GL11.glRotatef(rs.roty, 0F, 1F, 0F);
GL11.glRotatef(rs.rotz, 0F, 0F, 1F);
System.out.println("rotated");
}
這是我的代碼。 在名爲faces
的數組中有4個四元組,其中3個有needsIdentity
爲假,其中一個爲真,也是我試圖旋轉的那個。 我已經放入打印行來檢查它是否得到了它的身份。 也爲times
每1輪獲得一個。
你能解釋一下我到底需要撥打glLoadIdentity()
嗎? 你可能想知道這一點,但它旋轉我而不是對象。