十字キーでキャラクターを操作する

記事作成 2019年6月
PlayMaker 1.9.0 / Unity 2018.2.6f1

WASD、方向キー、あるいはゲームパッド等を使って図のように8方向への
移動を行います。

----------------------------------------------
キャラクターは、基本オブジェのカプセルに、進行方向をはっきりさせるため
シリンダーでくちばし的なものを付けた、適当ものです。
もちろん、自分の好みのオブジェに置き換えても構いません。

----------------------------------------------
キャラクターの移動は図に並べた3つのアクションで実現します。
状態「歩く」 を作成し、アクションをアクションブラウザから選択します。

[Get Axis Vector]でキーまたはジョイスティックのインプットを取得し、
[Controller Simple Move]でオブジェクトの動きに反映させます。
[Smooth Look At Direction]は進行方向を向くためのものです。

----------------------------------------------
赤下線部分に変数を使用するため、作成します。
Vector3型で、名前は適当に。

----------------------------------------------
更に、イベントも作成しておきます。以下の2つ。
名前は、発動条件そのままで付けています。

----------------------------------------------
[Controller Simple Move]を付けたとき、図のような注意が出たら
指示のままクリック。

必要なコンポーネントが、自動で追加され、インスペクタで確認できます。

----------------------------------------------
これまでの設定で再生してみると、冒頭の動画のようにオブジェクトを
キー、またはジョイパッドでコントロールできるはずです。

----------------------------------------------
更に、操作にちょっと変化をつけてみます。
先に作った状態「歩く」をコピー、となりに貼り付け名前を「走る」にします。そして
[Controller Simple Move]のSpeedを4にします。
移動速度が、歩くより速い、というわけです。

----------------------------------------------
開始状態の「状態」をコピペしようとすると、図のような注意が出ますが
適宜選択してください。

----------------------------------------------
そしてここから本番。
はじめの「歩く」に[Get Button Down]のアクションを追加。
SendEventは、先に作っておいたイベント「マウス左ボタン押す」を選択

状態「歩く」に分岐イベント「マウス左ボタン押す」を付け、その遷移先
「走る 」まで矢印をつなぎます。
マウスの左ボタンを押すと状態が「走る」に遷移するということです。
(ジョイパッドのボタン1でも同じ)

----------------------------------------------
「走る 」の方には[Get Button (UP)]のアクションを付けます。
遷移イベントは「マウス左ボタン放す」です。
こちらでは押していたマウスの左ボタンを離したとき、遷移が「歩く」に戻ります。

つまりマウスの左ボタンを押している間だけ、キャラクターが「走る」状態になり
移動スピードが上がります。

実際に再生してみて、動画のようになれば成功です。
@記事内で作成した、PlayMakerノード付きのキャラクター(くちばし付きカプセル)
を用意してみました。記事通りに試して動かなかった場合の参考にもどうぞ。


解凍してできたフォルダの中身をそのまま(またはフォルダごと)、PlayMaker
インストール済のプロジェクトのassetフォルダ内に置いてください。
この移動キャラクターは説明にも便利なので、今後の記事でも使用したい
と思います。

(参考) 2020年 11月01日 左右キーで回転。上方キーで前進するタイプの操作に
ついても記事にしました。   一人称コントローラ

0 件のコメント:

コメントを投稿