UE5のデータアセットとは
UE5ではブループリントクラスのデータ(変数など)などを管理できるデータアセットを作成することができる。
例えば武器として剣・斧・弓矢がある場合、それぞれにダメージ・防御力・連射力・重さなどを入れる変数が必要になる。そういったデータをまとめて管理するのに役立つ。
データアセットの使い方を詳しく紹介していく。
UE5のデータアセットの目次
データアセットの作り方データアセットの使い方
目次にもどる
データアセットの作り方
データアセットの作り方を紹介していく。
まず、データアセット用のブループリントクラスを作成していく。
コンテンツドロワーの任意の場所で右クリックし、ブループリント→ブループリントクラスと選択。
.jpg)
以下の画面の下で検索し、PrimaryDataAssetを出して選択する。
.jpg)
ファイルが作成されるので今回は名前をBP_Weaponとする。
次にデータアセットを作成する。
コンテンツドロワーの任意の場所で右クリックし、その他→データアセットと選択する。
.jpg)
クラス選択の画面になる。ここで先ほど作成したBP_Weaponを選択する。

データアセットのファイルが作成されるので好きな名前にしよう。今回は名前をRedHGとした。
目次にもどるデータアセットの使い方
UE5でのデータアセットの使い方を紹介していく。
まず、BP_Weaponを開いてみよう。
ここで好きな変数を作成しよう。自分の場合TPSを作っているため銃のステータスを管理したい。そこでATK(攻撃力)、Rapidfire(連射力)、Bullet speed(弾速)の3つを作ってコンパイルしよう。

次にRedHGを開こう。先ほど作成したATK・Rapidfire・Bullet speedを入力する場所ができている。好きな値を入力しよう。
.jpg)
銃のステータスを呼び出したいブループリントクラスを開き、変数を追加する。変数の型で検索してBP_Weaponを選択しよう(変数の型にクラスを選択することも可能)。変数の名前は今回はMainWeaponとした。
.jpg)
MainWeaponをドラッグ&ドロップしてイベントグラフに出して選択し、詳細タブのデフォルト値のやじるしを押し、検索してRedHGを選ぶ。
.jpg)
MainWeaponからワイヤーを伸ばし検索して、先ほど作成したRedHGのステータスの変数をGet・Setできるのが確認できる。
.jpg)
武器のステータスを簡単にとってきて、ダメージ計算や連射力の指定といった様々な処理を行うことが可能だ。
データアセットはデータを武器や敵といったクラスごとにまとめて管理して、必要な時に値をとってくることができるので、わかりやすくとても便利だ。
また、拡張性の高さも魅力。
ゲームで出したい武器は後からどんどん増えていくことだろう。試しにRedHGと同じようにBlueHGも作ってみよう。
そして後から、能力値の追加を行いたいこともあるだろう。試しにReload Speed(再装填速度)という変数をBP_Weaponに追加する。

するとRedHGにもBlueHGにもReload Speedの入力欄が追加される。BP_Weaponのクラスになっている全てのデータアセットに変数を追加できるのだ。たとえ武器の数がとんでもなく増えたとしてもステータス追加をスムーズに行うことが可能だ。
.jpg)