inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

GA_AttackHitCheck 에서 ExecuteGameplayCue

175

깨비

작성한 질문수 13

0

안녕하세요. AttackHitCheck 어빌리티 안에서 ExecuteGameplayCue 호출할 때 태그를 하드코딩하는 것이 아니라, BP에서 설정한 GameplayCue를 그대로 쓰고싶은데, 어떻게 할 수 있을까요? 꽤 검색했는데 찾기 힘드네요ㅠ ㅠ.

unreal-engine ue-blueprint unreal-engine5 언리얼-c++ gas

답변 2

0

이득우

안녕하세요. 관련해서는 멤버 변수로 등록해서 사용하는 것이 일반적이긴 합니다.
헤더파일

UPROPERTY(EditAnywhere, Category = "GAS")
FGameplayTag CharacterAttackHitCue;

소스파일

TargetASC->ExecuteGameplayCue(CharacterAttackHitCue, CueParam);

 

Part2에서 다루었던 Config를 사용하는 것도 하나의 방법이 될 수 있습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 깨비님.

언리얼 엔진의 Gameplay Ability System(GAS)에서 Blueprint(블루프린트)로 설정한 GameplayCue를 코드 또는 Blueprint에서 동적으로 사용할 수 있는 방법을 찾고 계시는군요.

게임플레이 어빌리티 시스템에서는 특정 태그나 Cue를 하드코딩하지 않고, 유연하게 설정값을 조정하는 것이 중요합니다. 이에 대한 해결책으로 다음과 같은 방법을 시도해 보실 수 있습니다:

방법 1: 블루프린트에서 설정한 데이터 읽기

일반적으로 블루프린트에서 어빌리티에 추가된 태그나 Cue 정보를 코드에서 액세스하려면, 블루프린트 자체에서 이 정보를 넘겨받을 수 있도록 C++ 클래스에 변수를 설정하는 방법을 사용할 수 있습니다.

  1. Attributes or Variables: 어빌리티 클래스의 변수로 GameplayCue 태그를 설정합니다. 다음과 같은 방식으로 C++ 클래스에 변수를 선언하여 블루프린트에서 이를 편집할 수 있게 합니다.
   UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "GameplayCue")
   FGameplayTag GameplayCueTag;
  1. Blueprint에서 설정: 이후 해당 변수를 블루프린트에서 설정할 수 있도록 하여, 다양한 시나리오에서 Cue를 결정할 수 있도록 합니다.

방법 2: Data Asset 활용

또 다른 방법은 Data Asset을 사용하여 다양한 설정을 준비하는 것입니다. 여기에서 GameplayCue 태그를 설정하고, 어빌리티가 발동될 때 이를 참조하여 실행시킬 수 있습니다.

기존 답변 체계 보기

유사한 주제를 다루는 기존 답변을 통해 추가로 이해를 높이실 수 있는 내용들이 있습니다:

  1. 언리얼 엔진에서의 Gameplay Cue 작동 방식
    • 이 답변에서는 태그를 기반으로 객체 관리 및 설정에 대한 구체적인 방법을 설명하고 있습니다.

위 방법들이 깨비님의 문제 해결에 도움이 되기를 바라며, 추가적인 질문이나 궁금한 점이 있으실 경우 언제든지 질문 남겨주세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.

현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

OnInterruptedCallback()으로 몽타주가 중간에 취소될 경우 CancelAbility를 호출하는게 맞을까요 ?

0

40

1

HasMatchingGameplayTag 역활이 조금 이해가 안갑니다.

0

47

1

캐릭터 스탯 초기 설정 방법 질문

0

88

2

언라얼 공식 홈페이지 튜토리얼 강의에 질문 있습니다

0

87

2

StartAbility, StartInputAbility 둘 다 GiveAbility를 호출해야하나요?

0

77

2

AnimNotify 구현 질문

0

107

2

[6강] ShowDebug에서 Attributes for avater가 변하지 않아요..

0

82

2

4강에서 콤보 공격시 다음 공격을 할 경우 ActivateAbility가 자동으로 발동되는 이유

0

114

2

9강 44:59 부분에서 질문이 있습니다.

0

82

2

8강 24:22 CurrentAttributeSet 질문입니다.

0

69

2

ASC 에서 AttributeSet 함수에 대한 mutable 반환 함수가 없는 이유

0

88

2

SetupGASInputComponent 함수 호출위치가 이해가안갑니다.

0

147

3

[GAS] Player State에 대해 궁금한 점이 있습니다.

0

138

2

AnimNotify를 GA에서 받는방법이 있을까요?

0

88

2

ABP의 skeleton 오류

0

118

1

장판스킬을 만들때 콜리전설정

0

175

2

어빌리티의 쿨다운 GameEffect에 대하여

0

263

2

GAS 구조로 멀티 플레이 게임을 제작할려고 하는데요

0

232

2

5.4버전 기준으로 Remove Gameplay Effect With Tags가 안 보입니다.

0

286

3

8강의 수업 내용들 중 이해가 잘 안가는 부분들이 있습니다.

0

211

2

7강 GE로 NonPlayer의 어트리뷰트셋 값을 초기화시키는 것에 질문이 있습니다.

0

111

2

7강 정리했는데 검토부탁드려요

0

127

1

5강 정리해봤는데 검토부탁드립니다.

0

136

2

4강의 CreateTask 함수 질문입니다,

0

160

2