概要
UEのGameplayAbilityシステムをBluePrintだけで扱う方法がないかと調べた結果のメモ
環境
UE5.1.0
セットアップ
GameplayAbilityを使えるようにする設定は公式ドキュメントの通り
https://docs.unrealengine.com/5.1/ja/gameplay-ability-system-for-unreal-engine/
プラグインの設定と、Build.csに追加するところまでです。
BPでGameplayAbilityを扱うために必要なもの
BP側にノードが追加されているので、以下のノードを呼び出せばBPだけで完結します。
AddAbilitySystemComponent
ActorのBeginPlay時にAddAbilitySystemComponentを呼び出し、変数に保存
GiveAbility
AbilitySystemComponentのGiveAbilityノードを呼び出して任意のGamePlayAbilityを与える
アビリティ実行
AbilitySystemComponentからTryAcitivateAbilityノードを呼び出して実行
TryAcitivateAbilityは一通りあります。
タグを使用しキャラクターが使用できるアビリティをリストで管理する使い方もできます。
実行結果
単純にPrintStringで実行されてるかを確認するGamePlayAbilityをBPで作成しました。
Zキー推しでAbilityを実行してみます。
呼び出しに成功してGamePlayAbilityのBPで指定した文字が出力されました。
終わり
GameplayAbilityって便利らしいけど、ググってみたらC++が必須のようなサンプルばかりで
まだBPだけでは扱えないままなのか?と思っている人に届けば幸いです。