こんにちは。3Dゲームの基礎を勉強しようと思い立ったのですが、最初の段階で躓いてしまいました。
なお、HSPのアルゴリズムというよりは、数学的な話になると思いますので、不適切でしたら申し訳ありません。
2DのFPSの処理(弾の発射、敵からの狙い撃ち等)は問題なく実装できる状態です。この二つを3Dで考えることにします。
座標軸は、xを左右、Zを前後、Yを上下とします。
とりあえず、移動寮をベクトルデータに出力することを目標にします。
重力とかそういうめんどくさいことは気にしません。
弾を発射する場合、2Dなら
x=cos(角度) z=sin(角度)
でベクトルに落とせますが、これに上下の回転を加える方法が分かりません。
また、敵から時機を狙う場合、
atan(自y-敵y,自x-敵x)
で角度を算出し、それを使ってベクトルに落とすことができますが、こちらも3Dになった瞬間分からなくなってしまいました。
ベクトルまでは数学でちゃんとやりましたが、行列はまったく学習せずにきてしまったので、ネット上のリソースでは理解できませんでした。
3次元空間への弾の発射と狙い撃ちは、通常どのように実装するものなのでしょうか?