09/07/03 22:39:01
XNA2.0を使っている者です。
プログラミングはド素人で、C#がはじめての言語です。
3Dの練習のため、3DでAI無しのチェスのようなものを作っています。
3Dの駒をマウスカーソルで選択したいのですが、それが出来なくて困っています。
具体的に言いますと、マウスオーバーで駒を選べるようにしたいのですが、
このとき画面平面上を動くマウスカーソルと、3次元空間に配置されている駒
が二次元的に見て接触していることを判定する方法が、わからないのです。
ぼんやりと、駒のXYZ座標ではなく、それが描画された領域が画面平面状の
どこを占めているかを算出するのかとは思っているのですが、それが正しいのか、
またどうやるのかが分かりません。
PC向けのゲームではよくマウスで動くカーソルで3Dのオブジェクトを選択している
気がするのですが、一体どうやっているのでしょう?
マウスオーバーでなくとも、マウスで直感的に三次元空間内の駒を選択できる
方法でしたらかまいません。
方法をご存知のがいらっしゃいましたら、どうかよろしくご教授お願いします。