Let's Enjoy Unreal Engine

Unreal Engineを使って遊んでみましょう

UE4 簡単なローカルマルチプレイヤーゲームを作ってみる

UE4でマルチプレイヤーのゲームを作るには色々とやり方がありますが、ローカル上で分割スクリーンによるマルチプレイヤーのゲームを作るのは本当に簡単です。

分割スクリーンによるマルチプレイヤーのゲームは最近減りましたが、ニンテンドー64時代には沢山ありました。では早速やってみましょう。

f:id:alwei:20150127172018j:plain

必要な回数だけCreate Playerをする

とりあえず複数プレイヤーキャラをだしたいというだけであれば、本当に一瞬で出来てしまいます。やることは必要な回数分だけ"Create Player"を呼びだすだけです。

今回は元いるプレイヤーと合わせて2人のキャラクターを作成したいので、レベルブループリントで一度だけCreate Playerを呼びます。

f:id:alwei:20150127172455j:plain

引数の"Controller Id"は自分で制御したいコントローラーのIDを入力します。既に存在しているIDを指定すると何も起こりません。-1を指定すると自動で空いている番号を連番で設定してくれるようになります。

これだけでなんともうローカルマルチプレイヤー対応が完了です。

f:id:alwei:20150127172621j:plain

そしてなんとゲームパッド(UE4で最初から対応しているのはXbox360パッドのみ)を差せば既に2人で動かすことが可能です!

f:id:alwei:20150127173618g:plain

キーボードから個別に制御できるようにする

そのままだとキーボードからの入力は1人分しか制御できません。なので、Controller IDごとに設定をする必要があります。テンプレートをそのまま使う場合には、以下のように入力イベント全てに対してプレイヤー数ごとにインデックスを設定します。

f:id:alwei:20150127174621j:plain

この方式だと入力はそれぞれのプレイヤーに渡りますが、同じイベントを使用するので、キーボードが1つの場合はそれぞれに別々の入力を与えてあげる必要があります。

f:id:alwei:20150127180848j:plain

例えばジャンプを別々のキーにする場合は別々にアクションマッピングを作って入力を複数にしておきます。

f:id:alwei:20150127181245j:plain

これで個別にプレイヤーごとの入力をとれるようになりました。あとはプレイヤーが増えればそれごとにプレイヤーコントローラーの設定をしてあげれば、簡単にローカルマルチプレイヤーのゲームができます!

UE4ではCreate Playerをするだけでスクリーンも自動で分割されるので、とても対応が楽です!もしスクリーンを分割させたくないという場合は、プレイヤーにカメラを持たさずに、別途カメラを作成するという方法もありです。

参考までに以下はGlobal Game Jam 2015で私が作ったゲームですが、これをそのまま応用したゲームです。これはGGJルールの通り、48時間以内に作りました。


GGJ 2015 Osaka Unreal Bomber - YouTube

とりあえず、まずはお手軽なマルチプレイヤーゲームを作ってみましょう!