gluUnProjectを呼び出しています(アプリはGLES20を使用しています)。私の一生の間、私は探している価値を得ることができません。
(-9、0、0)にオブジェクトがあるので、gluUnProjectの結果がどういうわけかこれと等しくなる必要があります。カメラは(0、20、4)にあり、近平面/遠平面の距離は(3、100)です。関数の実行時に現在の行列を印刷しようとしました(この場合、画面上でタッチされるピクセル位置は(160、345)であり、オブジェクトの位置に非常に近いです)。
win: (160,345,0.0)
model: (1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0)
viewport: (0, 0, 1280, 720)
proj: (0.5625, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, -1.020202, -1.0, 0.0, 0.0, -2.020202, 0.0)
飛行機の近く:
obj: (-1.3333333, -0.041666687, -1.0, 1.0)
final: (-1.3333333, -0.041666687, -1.0)
遠い飛行機:
obj: (-1.3333333, -0.041666687, -1.0, 0.00999999)
final: (-133.33345, -4.1666727, -100.0001)
ここでZ値に対して計算されたものを使用する必要がありますか?0.864前後の値を指定すると、ほぼ正しいX値(-9)が得られますが、これは私にはあまり意味がありません。この値はどの計算でも見つかりません。私は何度も何度も数字で遊んできましたが、すべてを一緒に機能させることはできません。ここで何が欠けていますか?