CG系 PRを含みます

UE4のキャラクターをWASDで前後左右に動かす

記事内に商品プロモーションが含まれます

こんにちは兼業クリエイターのみっつです。

今回はUE4(Unreal Engine4)を使ってキャラクターを動かしてみました。

その備忘録をつけていきます。

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-012.png

ざっくりと今回の流れを書いていきます。

  1. キャラクターブループリントを作る
  2. メッシュを切り替える
  3. カメラを設定する
  4. 割り当てるボタンを作る
  5. 『add Movement Input』にボタンを接続する

最終的には上の画像の感じになり、キーボードのWASDでキャラを前後左右に操作できるようになります。

今回はキャラクター操作だけで、とにかく、

『キーを押したらキャラが動く!』

ってのを実装していきます!

前提として、

キャラクターはUE4に読み込まれてるものとします。

キャラクターの読み込み方法については、『UE4の公式ドキュメント-アーティスト向けクイックスタート-』を参考にしてください!

なお今回はこちらの『Unreal Engine 4で極めるゲーム開発』を参考にしてます。

気になった人はぜひ買ってみてください!

キャラクタークラスを作る

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-004.png

追加/インポート>blueprintクラス>Characterで、キャラクタークラスを作る。

キャラクタークラスのメッシュを切り替える

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-005.png
https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-006.png

作ったキャラクタークラスをダブルクリック。

キャラクタークラスの編集画面に切り替わる。

左側の『Mesh(CharacterMesh0)(継承)』を選択。

右側の『メッシュ>Skeletal Mesh』のプルダウンメニューから、オリジナルキャラのスケルタルメッシュを選択。

今回は書籍に使われてるアセットを使ってます。

カメラを設定する

コンポーネントを追加>camera,spring Arm

カメラとスプリングアームのコンポーネントが出てくる

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-015.png

『SpringArm』の子供に『Camera』をドラックする

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-016.png

SpringArmを選択

右画の詳細パネルから、以下の項目を設定する

  • カメラ>Target Arm Lengthに『1000』
  • トランスフォーム>回転のYに『-30』
https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-012.png

実行してみると、カメラがいい感じに三人称視点になる。

UE4でボタン操作を割り当てる

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-000.png

プロジェクト設定>左側の『エンジン>インプット』>軸マッピング

軸マッピングの『+』ボタンを押して、割り当てるキーを作る

今回はキーボードのWDASボタンでキャラクタを上下左右に動かせるようにする。

前後の移動ボタンを作る

『MoveForward』と名前をつける。

プルダウンメニューから『キーボード>W』を選択

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-001.png

同じ要領でボタンメニューを追加し、『キーボード>S』を設定

Scaleに『-1』を設定

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-002.png

左右の移動ボタンを作る

『MoveRight』と名前をつける

↑と同じ要領でキーボードの『D,A』ボタンを割り当てる

『A』のScaleには『-1』を割り当てる

イベントグラフでボタンに操作を接続する

イベントグラフに切り替える

右クリック>インプット>軸イベント>MoveFoward

『インプットAxis MoveForward』のブループリントが出てくる。

『インプットAxis MoveForward』のピンを左ドラック。

ポーン>インプット>add Movement Input。

『add Movement Input』のブループリントが出てくる。

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-003.png

『インプットAxis MoveForward』の『Axis Value』を『add Movement Input』の『Scale Value』に接続。

『World Direction』のXに『1.0』を設定

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-011.png

左上の『コンパイル』をクリック。

https://www.mitsurog.com/wp-content/uploads/2021/08/キャラを動かす-012.png

『WASD』キーでキャラが前後に動けば成功です。

まとめ:『add Movement Input』のX、Yに数値入れ忘れがち

  1. キャラクターブループリントを作る
  2. メッシュを切り替える
  3. カメラを設定する
  4. 割り当てるボタンを作る
  5. 『add Movement Input』にボタンを接続する

add Movement InputのXに数値を入れ忘れ、「う、動かね…」って状態を何度も味わいました。

この辺は忘れないように気をつけましょう…

次回はカメラを動かせるようにしていきます。

UE4でのゲーム制作に興味ある人は、ぜひこちらUnreal Engine 4で極めるゲーム開発』を買ってみてください!

Unreal Engineの操作だけじゃなくて、ゲーム作りのイロハ的なことも書いてあるので、かなり勉強になりますね〜

さすがバンナムさんの開発者が書いてるだけあります。

まだまだインプットの最中なんで、随時更新していきます。

ABOUT ME
みっつ
CGアニメーター/リガー テクニカルアーティスト(TA)目指して精進中です 都内でゲーム作ってます。