在OpenGL中制作两个独立的茶壶

时间:2017-04-30 07:36:07

标签: c++ opengl glut glm-math

我想制作两个独立的茶壶,但两个茶壶重叠。

如何修复代码以分隔两个茶壶?

void display() {

    glClearColor(0,0,1,0);
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glMatrixMode(GL_MODELVIEW);
    mat4 mv; 
    const vec3 center(0.0,0.0,0.0);

    if (useGlu) mv = glm::lookAt(eye,center,up); 
    else {
        mv = Transform::lookAt(eye,up); 
    }
    glLoadMatrixf(&mv[0][0]); 

    glutSolidTeapot(2);
    glutSolidTeapot(2.5);

    glutSwapBuffers();
}

1 个答案:

答案 0 :(得分:0)

在生成第二个茶壶之前尝试设置建模坐标原点:

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslatef(-6.0, 0.0, 0.0);
glutSolidTeapot(2.5);