数日前からずっとチャレンジしていたOpenGL ESによるマウスイベントが、 ついにちょろっと動きました! 基本的なアイディアとしては、カメラの座標を通り、クリックされた方向に向かう 直線と、対象の三角形のある平面の交点の位置を取得するというもの。 具体的な手順は以下の通り カメラ位置から注視点へ向かう直線の、z-x傾き、z-y傾きを得る 視野角、アスペクト比から、クリックされた点とカメラ位置との相対z-x傾き、z-y傾きを計算する tanの加法定理により、上記二つを合成し、絶対のz-x傾きz-y傾きを得る 上で得られた傾きを持って、カメラ位置を通る直線を作る カメラの位置ベクトルをxとし、その直線を通る、カメラ位置以外の任意の点の位置ベクトルをyとする 当たり判定を行う三角形の三点の位置ベクトルをそれぞれp、q、rとする p、q、rの三点からなる三角形内部を表すベクトルは、p+s(q-p