我是android opengl的新手。我渲染了一个3d图,但问题是它是颠倒的,我试图使用glRotatef(),但无法得到正确的数字,有人能帮助我吗? 我的ondraw()代码
public void onDrawFrame(GL10 gl) {
gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
gl.glLoadIdentity();
gl.glMatrixMode(GL10.GL_MODELVIEW);
gl.glLoadIdentity();
GLU.gluLookAt(gl, 5.0f, 30.0f, -15.0f, 0.0f, 0.0f, 30.0f, 0.0f, 1.0f, 0.0f);
gl.glTranslatef(0.0f, 0.0f, 10.0f);
gl.glScalef(0.1f, 0.1f, 0.1f);
p.draw_tablelamp1(gl);
p.draw_tablelamp2(gl);
}
答案 0 :(得分:0)
将您的设备倒置
尝试以相反的方式设置相机向上:
GLU.gluLookAt(gl, 5.0f, 30.0f, -15.0f, 0.0f, 0.0f, 30.0f, 0.0f, -1.0f, 0.0f);
您也可以尝试通过切换Y轴Top with Bottom来更改视口。
最后你可以尝试旋转东西:
gl.glTranslatef(0.0f, 0.0f, 10.0f);
gl.glScalef(0.1f, 0.1f, 0.1f);
gl.glRotatef(1.0f, 0.0f, 0.0f, 3.1415f);
gl.glRotatef(0.0f, 0.0f, 1.0f, 3.1415f);
p.draw_tablelamp1(gl);
p.draw_tablelamp2(gl);