【UE5】構造体を活用!ブループリントでアクタの見た目を動的に変更する【ゲーム開発】【アンリアルエンジン】
本日は、構造体を使って、同じブループリントだけどインスタンスを編集することで、違うMeshのActorとして扱えるようなブループリントアクタを作ってみようと思います。
日本語あってるのかn?💦
一連の流れとしては、
✅構造体の作成
✅ブループリントアクタの作成
✅関数の作成
✅ブループリントを配置
✅実際にやってみる
✅まとめ
って感じでやっていこうと思います。
長いように感じますが、1つ1つの工程はかなり短いので、すぐに終わると思います。
話しててもしょうがないので、ここからは実際に手を動かしていきましょう!
構造体の作成

まずは、構造体を作成していきます。
フォルダはどこでも大丈夫です。
作成手順
・コンテンツブラウザ内で右クリック→ブループリント→構造体
・名称:DS_Tutorial
・作成した構造体を開く
・変数を追加から変数を追加する
・名前:Static Mesh
・型をStaticMeshのオブジェクトに変更
アクタの作成

作成手順
・コンテンツブラウザ内で右クリック→ブループリント→アクタを選択
・作成したアクタのブループリントを開く
・コンポーネントタブの追加より「Static Mesh」を追加
・名称:Static Mesh Test
・変数を1つ作成し、型を作成した構造体に変更(BP_Tutorial)
・名称:Mesh

・インスタンス編集可能にチェックを入れる
・スポーン用に公開にチェックを入れる
ブループリントアクタの関数を作成

・ブループリントアクタの関数へ移動
・作成した変数(Mesh)をGetで配置
・変数のピンをひっぱり「Break DT Tutorial」を配置
※「DT Tutorial」の部分については、作成した構造体の名称になるため、名称を今回の記事と別にしている場合、注意してください。
・Static Mesh Testをゲットで配置
・Static Mesh Testのピンをひっぱり、「Set Static Mesh」を配置
・Set Static Meshの「NewMesh」のインプットピンと「Break DS Tutorial」のStatic Meshピンを接続
ブループリントの配置

・レベルのタブに戻ります
・作成したブループリントアクタをゲーム内に配置
(場所はどちらでも問題ございません。お好きな場所に置いてください。)

インスタンスの編集が可能になっている場合、配置したブループリントを選択し、詳細タブに移動すると、デフォルトにMeshタブが追加されます。
こちらが出てこない場合、ブループリントアクタで作成した変数のインスタンスが有効になっていないので、戻って有効にしてください。
実際にやってみる

今回仕様したAsset(無料) 👉Food Pack 01 | Fab
・配置したいStaticMeshを選択
・詳細タブにあるデフォルトのStaticMeshに設定
(選択した状態で←を押すと選択したMeshを設定できるよ!)
まとめ

配置しているブループリントアクタを2つ複製して、配置してみたよ!
構造体で管理することで、1つのブループリントアクタで、見た目を変更することができるので、めっちゃ便利ですね!
コンテンツブラウザもかさばらずで見やすくなるね!
構造体では、見た目だけではなく、色々な設定を一括で分かりやすく管理できるから是非覚えておきたいでね!
実は、構造体については、別途記事があるからこっちも見てくれたら、さらに構造体を理解できるようになるかもしれないね!
時間があれば覗いていってください。
それでは、またお会いしましょう。