今回から、以前作ったキャラクターの改良を行っていきたいと思います。
直したい所は色々あります。
・まっすぐ移動する時より斜め方向に移動する時の方が速いのでは…
・移動方向に合わせてモーションを変える
・移動速度に合わせてモーションの速度を変える
・高低差がある地形の上を移動出来る様にする
・変数に初期値をセットする
・移動を始める時に再生中のモーションをキャンセルする
全部出来るか分かりませんが、やれるだけやってみましょう。
今回は最初の項目です。
・まっすぐ移動する時より斜め方向に移動する時の方が速いのでは…
以前作成したスクリプトでは、ゲームパッドのアナログスティックのX入力量とY入力量をそれぞれ別に取得しました。なので、スティックを斜め方向に入れると両者を合成した値は1.0を超え、45度にすると値は最大の√2になると思われます。
実際の所どうなのでしょうか?
アナログスティックからの入力量を合成したベクトルの長さを表示するスクリプトを作って実験してみました。
こちらがスクリプトです。X入力量の2乗+Y入力量の2乗の平方根を表示します。
インプットはゲームパッドのアナログスティックです。
スティックを斜め45度方向いっぱいに傾けて値を表示してみました。
こちらが結果です。
…意外な事に1.0になりました。
他の方向に傾けてもおおむね1.0になります。
こちらはゲームパッドの代わりにキーボードからのキー入力をインプットに使ってみた結果です。予想通り√2になりました。
これはどういう事でしょうか。単純にアナログスティックの可動範囲が円形だから入力量が制限されているのか?
何にしろ、アナログスティックを使っている限り現状で問題なしという事でこの件は終了です。良かった良かった。
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment