Re: [問題] OPENGL的gluProject失敗?(已GOOGLE過)
謝謝各位前輩的熱心,
原PO再繼續trace後發現,
問題出在:
glGetDoublev(GL_PROJECTION_MATRIX, projection );
glGetDoublev(GL_MODELVIEW_MATRIX, modelview );
這兩行得到的矩陣都是空矩陣, 才會導致後面的gluProject fail,
所以現在問題變成想請問各位大大, 為何取出會是空矩陣??
為了這code, 原PO崩潰數日了, 請各位大大幫幫忙, 謝謝
※ 引述《theone777 (你想要什麼)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: VS2005, C++
: 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
: OPENGL
: 問題(Question):
: gluProject為何一直失敗?
: 餵入的資料(Input):
: 請參考程式碼中input
: 預期的正確結果(Expected Output):
: 希望至少gluProject可以回傳GLU_TRUE
: 錯誤結果(Wrong Output):
: 結果都是回傳GLU_FALSE
: 程式碼(Code):(請善用置底文網頁, 記得排版)
: GLint viewport[4];
: GLdouble modelview[16];
: GLdouble viewVector[3];
: GLdouble projection[16];
: GLdouble winX, winY, winZ;//2D point
: GLdouble posX, posY, posZ;//3D point
: posX=k;
: posY=0.0;
: posZ=0.0;
: /*網路上有人說在使用gluProject之前, 以下這兩行一定要加上去,
: 請問是否一定要加?!沒加會影響gluProject的結果嗎? */
: glMatrixMode(GL_PROJECTION); // Select The Projection Matrix
: glLoadIdentity(); // Reset The Projection Matrix
: glGetDoublev(GL_PROJECTION_MATRIX, projection );
: glGetDoublev(GL_MODELVIEW_MATRIX, modelview );
: glGetIntegerv( GL_VIEWPORT, viewport );
: int res=gluProject(posX,posY,posZ,modelview,projection,viewport,&winX,&winY,&winZ);
: 補充說明(Supplement):
: GOOGLE了一整個下午, 也請教了身邊的大神朋友,
: 通通都無解, 找不出原因!!!
: 懇請各位板友指教, 謝謝各位!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.32.35
※ theone777:轉錄至看板 Soft_Job 01/27 14:52
→
02/04 13:08, , 1F
02/04 13:08, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章