2012-04-03 3 views
1

간단한 삼각형을 그립니다. 회전하는 방법과 상하 좌우로 움직이는 방법을 배우고 싶습니다. gl.glRotatef (0.0f, 1.0f, 0.0f, 0.0f)를 추가했지만 회전하지 않습니다. 내 2D 오브젝트에 회전 추가하는 방법

내 코드입니다 :

공용 클래스 GLrenderer이 렌더러 { 공공 GLqueue 트라이를 구현;

public GLrenderer() { 
    tri = new GLqueue(); 

} 

@Override 
public void onSurfaceCreated(GL10 gl, EGLConfig eglConfig) { 
    // TODO Auto-generated method stub 
    gl.glDisable(GL10.GL_DITHER); 
    gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT, GL10.GL_FASTEST); 
    gl.glClearColor(.8f, .0f, .2f, 1); 
    gl.glClearDepthf(1f); 
} 

@Override 
public void onDrawFrame(GL10 gl) { 
    // TODO Auto-generated method stub 
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_COLOR_BUFFER_BIT); 
    gl.glMatrixMode(GL10.GL_MODELVIEW); 
    gl.glLoadIdentity(); 
    GLU.gluLookAt(gl, 0, 0, 10f , 0 , 0 , 0 , 0 ,2, 0); 
    tri.draw(gl); 
} 

@Override 
public void onSurfaceChanged(GL10 gl, int width, int height) { 
    // TODO Auto-generated method stub 
    gl.glViewport(0, 0, width, height); 
    float ratio = (float) width/height; 
    gl.glMatrixMode(GL10.GL_PROJECTION); 
    gl.glLoadIdentity(); 
    gl.glFrustumf(-ratio, ratio , -1, 1, 1, 25); 

} 

}

답변

0
gl.glPushMatrix(); 
gl.Translatef(x,y,0) 
gl.Rotatef(45,0,0,1)//rotate the object 45 degress in z axis 
DrawObjuect(); 
gl.glPopMatrix();