我使用以下代码检查GL_MODELVIEW和GL_PROJECTION的值。
GLdouble modelView[16] = {0};
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0, 0, 5, 0, 0, 0, 0, 1, 0);
glGetDoublev(GL_MODELVIEW, modelView);
for(int i = 0; i < 16; ++i){
std::cout << modelView[i] << '\t';
if((i+1)%4 == 0)
std::cout << std::endl;
}
std::cout << "-------------" << std::endl;
然而,我总是得到全零。谁能告诉我原因?
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
答案 0 :(得分:3)
您应该使用:
glGetDoublev (GL_MODELVIEW_MATRIX, modelView);