0
我的代碼無法正常工作。圍繞對象中心的2d OpenGL旋轉
public void onDrawFrame(GL10 gl) {
gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
gl.glMatrixMode(GL10.GL_MODELVIEW);
gl.glLoadIdentity();
// Here I translate the camera so that the point 0/0 will be at the
//bottom left of the screen
gl.glTranslatef(CameraX, CameraY, CameraZ);
// then I draw the object to rotate like many threads here said:
gl.glPushMatrix();
// translate to the middlepoint of object
gl.glTranslatef(object.getPosX() + object.getWidth()/2, object.getPosY() + object.getHeight()/2, 0);
// rotate
gl.glRotatef(30, 0, 0, 1);
object.draw(gl);
gl.glPopMatrix();
問題是它沒有圍繞中心進行旋轉。它只將對象的座標轉換爲給定點,然後圍繞座標旋轉。這是爲什麼?
謝謝你的作品! – user3337420
@ user3337420不錯。 :)請將其標記爲已接受的答案,以便其他人知道問題已回答。 –