私はopenglが初めてです。独自のマトリックスを使用して球体を動かそうとしましたが、結果が正しくありません。
左側の球は私が期待するもので、右側は glMultMatrixd() で結果を生成します。私は何を間違えましたか?
void Display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glDisable(GL_LIGHTING);
glDisable(GL_TEXTURE_2D);
glPushMatrix();
GLdouble translate[16] = {1,0,0,1,0,1,0,0,0,0,1,0,0,0,0,1};
glMultMatrixd(translate);
DrawSphere();
glPopMatrix();
glPushMatrix();
glTranslatef(1,0,0);
DrawSphere();
glPopMatrix();
glutSwapBuffers();
}
void Reshape(int width, int height) {
tbReshape(width, height);
glViewport(0, 0, width, height);
glGetIntegerv(GL_VIEWPORT, viewport);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(60.0, (GLdouble)width/height, 0.01, 100);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0, 0.0, -5, // eye
0.0, 0.0, 0.0, // center
0.0, 1.0, 0.0); // up
}