UE5 C++で「Gameplay Ability System」で実行中の「Gameplay Ability(UGameplayAbility)」を取得する(UAbilitySystemComponent、UGameplayAbility、GetAnimatingAbility)
C++で「Gameplay Ability System」で実行中の「Gameplay Ability(UGameplayAbility)」を取得する方法です。
「Gameplay Ability System」については下記のサイトさんがまとめてくれています。
情報はこちらを詳しくみるのが良いと思います。
・【UE4】Gameplay Ability System を使い始めたい人向けの情報
https://qiita.com/sentyaanko/items/314ee39feb62ce67b885
公式ドキュメントはこちら。
・ゲームプレイ アビリティ システム(Gameplay Ability System)
https://docs.unrealengine.com/4.27/ja/InteractiveExperiences/GameplayAbilitySystem/
「Gameplay Ability System」で実行中のアビリティ(Gameplay Ability)を取得するには
「UAbilitySystemComponent」の「GetAnimatingAbility」関数を使います。
こんな感じで記述します。
この素の状態の「UGameplayAbility」に対してだとあまり上記のようにして何かをするというのはないかもですが
「UGameplayAbility」を継承して色々と仕込んだ場合などは使うこともあるのかなと思います。
「Gameplay Ability System」の使い方についてはまだ全然わかっていないので
少しづつ使い方を覚えていこうと思います。
「Gameplay Ability System」については下記のサイトさんがまとめてくれています。
情報はこちらを詳しくみるのが良いと思います。
・【UE4】Gameplay Ability System を使い始めたい人向けの情報
https://qiita.com/sentyaanko/items/314ee39feb62ce67b885
公式ドキュメントはこちら。
・ゲームプレイ アビリティ システム(Gameplay Ability System)
https://docs.unrealengine.com/4.27/ja/InteractiveExperiences/GameplayAbilitySystem/
「Gameplay Ability System」で実行中のアビリティ(Gameplay Ability)を取得するには
「UAbilitySystemComponent」の「GetAnimatingAbility」関数を使います。
こんな感じで記述します。
// 現在実行中のアビリティを取得
TObjectPtr< UAbilitySystemComponent> aAbilitySystemComponent;
TObjectPtr< UGameplayAbility> aAbility = aAbilitySystemComponent->GetAnimatingAbility();
if(aAbility != nullptr){// 実行中のアビリティに対して処理を行う
}
この素の状態の「UGameplayAbility」に対してだとあまり上記のようにして何かをするというのはないかもですが
「UGameplayAbility」を継承して色々と仕込んだ場合などは使うこともあるのかなと思います。
「Gameplay Ability System」の使い方についてはまだ全然わかっていないので
少しづつ使い方を覚えていこうと思います。
| UE5 | 10:00 | comments:0 | trackbacks:0 | TOP↑