2
我正在使用glm數學庫來解決以下問題:將2D屏幕位置轉換爲3D世界空間。與GLM :: unProject在這種情況下,我希望worldPos爲(0,0將2D屏幕位置放入3D世界空間
float screenW = 800.0f;
float screenH = 600.0f;
glm::vec4 viewport = glm::vec4(0.0f, 0.0f, screenW, screenH);
glm::mat4 tmpView(1.0f);
glm::mat4 tmpProj = glm::perspective(90.0f, screenW/screenH, 0.1f, 100000.0f);
glm::vec3 screenPos = glm::vec3(0.0f, 0.0f, 1.0f);
glm::vec3 worldPos = glm::unProject(screenPos, tmpView, tmpProj, viewport);
現在:
在試圖跟蹤問題,我簡單的代碼如下1)。然而,它正在通過(127100.12,-95325.094,-95325.094)。
我誤解了glm :: unProject應該做什麼?我追蹤了這個功能,它似乎工作正常。
具有完美的感覺。謝謝 – JimFing 2012-01-09 20:57:23