視点移動の際に上下に際限なく回転してしまうことに気づいた。
直そうと思ったら回転の概念はなかなかややこしい。
オイラー角を計算して一定の範囲にない場合は上下の視点移動を無効化するようにしたが、もっと賢い方法があるような気もする。
回転にはQuaternionという概念がありVector3とは異なるらしいが理解できていない。
攻撃を実装しようと思い攻撃用の簡単なダミーを作成。
武器を振る動作を実装するためにカメラの前で四角柱を回転させてみたが、これもまだ改善が必要。振り回す動作中に視点移動すると武器の角度がどんどんずれていく。
動作開始時に初期角度を記憶、スケールを1倍にし、動作終了時にスケールを0倍にして初期位置に戻すという処理を行っているが、角度がワールド上の絶対角度で記憶されているのでカメラに対する相対角度を記憶する必要がある。同じ理由で振り回している最中もカメラの動きについてこない。
この処理はスクリプトに直接書くよりアニメーションを使う方が良いのだろうか。