ATMWRIによるUE5の記録

Unreal Engine 5 を使い始めました

ぷちスタを振り返って反省する

1週間というイベント開催期限中に記録を付ける余裕が全くなかったので復習がてら自分用メモを残すことにした。

1. ゲームとUIの関係について

ゲームの状態をどこで管理するのか悩んで結局BP_ThirdPersonCharacterLevel Blueprintに変数やらその処理を持たせることにした。Widgetはそれらの変数をバインドして表示するだけ。

  • Level BlueprintでWidgetの生成
  • 生成したWidgetにBP_Playerの参照をセット
  • BP_PlayerはUIの存在を知らない

LevelBlueprintで生成したWidgetが持つBP_Player変数をセット

反省点

変数とかはLevelをまたいで持ち越せるGameModeに持たせた方がいいらしい。

疑問点

Wigetアニメーションを使った場合、そのアニメーションのイベントをバインドするにはどうしたらいいのか?

2.Event周り

On Component Begin Overlapで取得できるOther Acterを使ってインターフェイス越しにプレイヤーの関数を呼び出すことにした。

アイテムはBPインターフェイスに対してイベントメッセージを送る
プレイヤーブループリント側であらかじめ作成したBPI_IPlayerを実装した
BPI_IPlayerの実装をBP_ThirdPersonCharacterで
下に伸びているノードは効果音の処理へとつながっている

反省点

スコア加算などの処理・効果音・その他エフェクトを連携させるにはEventDispatcherを使った方がいいのかもしれない。いまのところゲーム進行の管理がすべてBP_ThirdPersonCharacterに集約されてしまっているのでスッキリとさせたい

疑問点

他のプロジェクトではどのように各要素を連携させているのか?

3. Animation関連

反省点

IK_rigを使用してIK_Retargeterを作成、その流れで個々のアニメーションをリターゲティングして喜んでいたが、どうにもAnimation Bluprintそのものもターゲットにできるようなので試したい。

4.まとめ

これまでは、ただ漠然とチュートリアルをつまみ食いしながらUE5の各機能を触っていたが、ぷちスタに挑戦してようやく最初の一歩が踏み出せた気がする。まだぷちコン自体は終わっていないので、これらの反省点や疑問点、やりたいことを詰め込んで提出したい。