Publish:

태그: , , , , ,

카테고리:


게임플레이 어빌리티 타겟 액터

게임플레이 어빌리티(GA)에서 대상에 대한 판정(주로 물리 판정)을 구현할 때 사용하는 특수한 액터.
줄여서 TA라고 한다.

AGameplayAbilityTargetActor 클래스를 상속받아서 구현한다.

타겟 액터가 필요한 이유?

타겟을 설정하는 다양한 방법이 있음.

  • Trace를 사용해 즉각적으로 타겟을 검출하는 방법 (raycast 처럼…)
  • 사용자의 최종 확인을 한번 더 거치는 방법 (원거리 범위 공격, 광역 공격기 혹은 장판 까는 공격 같은)
  • 공격 범위 확인을 위한 추가 시각화 (시각화를 수행하는 액터를 월드레티클(WorldReticle)이라고 함)

주요 함수

  • StartTargeting : 타겟팅을 시작
  • ConfirmTargetingAndCoroutine : 타겟팅을 확정하고, 이후 남은 프로세스(AbilityTask) 진행
  • ConfirmTargeting : 태스크 진행 없이 타겟팅만 확정
  • CancelTargeting : 타겟팅 취소

게임플레이 어빌리티 타겟 데이터

위의 타겟 액터에서 판정한 결과를 담은 데이터.

  • Trace 히트 결과 (HitResult) 또는 SphereOverlap 의 결과
  • 판정된 다수의 액터 포인터
  • 시작 지점
  • 끝 지점

이러한 속성을 가지고 있다.
타겟 데이터를 여러 개 묶어 전송하는 것이 일반적인데, 이를 타겟 데이터 핸들이라고 함.

타겟 액터에서 판정한 결과는 타겟 데이터 핸들을 통해서
어빌리티 태스크에 전송된다.

AT와 TA사이의 실행 흐름

GA

  • SpawnActorDeferred : 타겟 액터 지연 생성

이슈 및 공부한 것을 기록해두는 개인 블로그 입니다. 댓글, 피드백 환영합니다 🙂

Update:

댓글남기기