用下面代码先将(0.1, 0.1, 0) project到(winx,winy,winz),再将此点unproject到(x,y,z),
理论上应该得到(0.1,0.1, 0),可unproject却返回个GL_FALSE,是何故。代码如下:GLdouble modelMatrix[16];
GLdouble projMatrix[16];
GLint viewport[4];glGetDoublev(GL_MODELVIEW_MATRIX,modelMatrix);
glGetDoublev(GL_PROJECTION_MATRIX,projMatrix);
glGetIntegerv(GL_VIEWPORT,viewport);GLdouble winx,winy,winz,x,y,z;gluProject(0.1, 0.1, 0, modelMatrix,projMatrix,viewport,&winx,&winy,&winz);
int value = gluUnProject(winx,winy,winz,modelMatrix,projMatrix,viewport,&x,&y,&z);偶欲用此法通过鼠标得到屏幕上一点的空间坐标,各位若有其它可行办法,请告知,不胜感激。