2022-04-06

【キャラを作ろう#1】自分で操作できるキャラクターをイチから作る【UE5】

シリーズ第1回。デフォルトのサードパーソンを流用するのではなくキャラクタのブループリントから作る。今回は移動や視点変更など何も入ってないBP作成まで

Article Image

※バージョンは5.0.0(正式リリース直後)を使用

キャラクターをイチから作る

キャラクターの作成といえばサードパーソンテンプレート(通称グレイマン)を使う人が多いと思う。

しかし実際にゲームに落とし込むときはサードパーソンのテンプレートを流用しているだけでは限界がある。

必ず何かしら細かい調整や機能追加が必要になるはずだ。

というわけでキャラクターを新規作成してイッコずつ機能を実装してみることで様々な応用に対応できるようにしようという試み。

グレイマン

今後の記事ではUE5の新マネキンをベースにBP等を見ていこうと思う。

新しいマネキン

この記事で作るもの

モーションもなし、移動もできない、カメラも動かせないハリボテを作る。

本当にカメラがくっついただけのハリボテだが、これが出来ないと今後なにもできない。

初心者向け

初心者向け、ということである程度細かい手順も記しておく。

ただ、細かすぎる点(調べたらすぐ出てきそうなとこ)は省略してあるので別途調べてもらえたらと思う。

キャラモデルやアニメは作らない

イチからと書いたが、このシリーズではキャラのモデルは既存のものを使うことにする(モデリングは範囲が大きすぎるため)

あくまでブループリントの勉強用。

アセットの作成

マップの新規作成は省略。何でも良いので作っておく。

次にコンテンツブラウザから右クリックでブループリントクラスを新規作成。

ブループリントクラス

親クラス選択のダイアログはCharacterを選ぶ

移動する自キャラを作る場合は基本ここから。

Character

ダブルクリックで開いた時にコンポーネントやブループリントのウィンドウが出ない場合は「ブループリントエディタを開く」(UE5)

ブループリントエディタ

何かメッシュを設定

このままだとキャラモデルがいないのでMeshコンポーネント > Skeletal Meshに好きなものを設定する。

Meshコンポーネント

Skeletal Mesh

単なるモデル(外見のメッシュ)だけの話なのでここはグレイマンを設定しても良いし、好きなモデルをインポートしても良い。

※ここではUE公式で無料配布されているParagon Auroraをインポートしている。

Paragon: Aurora:Epic コンテンツ - UE マーケットプレイス

メッシュの位置と方向を調整

最初にメッシュを設定すると変な位置と方向を向いているので調整する。

アローコンポーネント

  1. 正面をアローコンポーネント方向へ向ける
  2. カプセルのコリジョンが足元にくるように高さを調整

修正後

修正後

なお、このカプセルは衝突判定に使うコリジョン。

アローコンポーネントはキャラクターの方向をわかりやすくするためだけのもの。

カメラを作る

サードパーソン(三人称視点)なのでカメラは本人ではなく後ろから撮影することになるので、後ろ側にカメラを作っていく。

Spring Arm ≒ 自撮り棒

いきなりカメラをつくる訳ではなくのようにカメラの距離や角度をいい感じに調整できる「自撮り棒」的な役割のものを追加する。

検索にSpring Armと入力して出てきたものを追加。

Spring Arm

スプリングアームがなぜ必要かというと、例えばカメラが壁にあたると視点が壁を突き抜けてしまう。

しかしコレが有ると壁にめり込まないようにカメラが自動で距離を調整してくれる。

SpringArmを選んだ状態でCameraを追加

次にカメラを追加するのだがSpringArmコンポーネントを選択した状態で追加する。

camera

SpringArmコンポーネントの1段右側にCameraが追加されている。

これで親子関係がついてSpringArmCameraがくっついているという意味になる。

つまりアームが動けば一緒にカメラも動くようになった。

ドラッグ&ドロップでも親子関係は付けられる。

ゲーム上に配置

これでキャラクターの超基本は出来ている。

ただしゲーム上で自キャラとして使うにはもう少し設定が必要。

レベルエディタに戻ってPlayer Startを追加する

Player Start

ここに自キャラが登場(Spawn)しますよという地点になる

BAD size

BAD sizeのマークが出ている場合は、衝突判定(コリジョン)がぶつかってしまっているので何もない位置へ移動しよう。

画像では上へ移動。

正常なプレイヤースタート

おまけ:実は結構適当でもイケる

床にPlayer Startがめり込んでいるとキャラが床を突き抜けてしまう不具合があるかもしれないが、実は多少めりこんでいても自動で上にSpawnするようにUE側が調整してくれる。

また、キャラクターBPを作った時点で「下に落ちる」「床に足を付けて止まる」という処理が入っているので、逆に高い位置からSpawnさせても問題なく床で止まる。

ゲームモードオーバーライド

さて、これでキャラクターが登場する位置は決めたが実際に登場させる処理が入っていないので作っていく。

またブループリントを新規作成してGame Mode Baseを選ぶ

Game Mode Base

ここでは名前をBP_TestGameModeにした。

レベルエディタのワールドセッティング > ゲームモードオーバーライドNoneになっているのでBP_TestGameModeへ変更。

Default Pawn ClassのところにキャラクターのBPを設定する。

ゲームモード設定

ゲームモードではゲームで使用する設定がいくつか入れられるが、ここでは「どのキャラクターが自キャラになるのか?」という設定。

ひとまずココだけ覚えておけば良いと思う。

完成!

長くなったがこれで完成。

ゲームを実行してみよう。

実行ボタン

これで自分のキャラクターがゲーム中に登場する。が...

キャラ登場

操作系のブループリントに何も書いてない状態のため、移動どころかカメラ操作すら出来ないはずだ。

以上

正直本当になんの役にも立たない状態のBPではあるが、千里の道も一歩から。

このシリーズ、実は次の記事で書く予定のものを書き始めたら長くなりそうだったので一つに切り分けた。

今後の記事では、UE5の新しいサードパーソンテンプレートをベースにBPを紐解いていきたい。



この記事をシェア


謎の技術研究部 (謎技研)