GAS GAS는 복잡한 기존 시스템을 몇 가지 구성요소로 분리하면서 자유도와 재활용성을 올리는 프레임 워크이다. GAS의 주요 구성요소는 다음과 같다. ASC (AbilitySystemComponent) 액터에 부착해 GAS 시스템을 동작시키는 컴포넌트이다. 컴퓨터로 따지자면 CPU 같은 존재이다. ASC에는 다양한 요소와 함수들이 내장되어 있다. 그중, 자주 사용되는 몇 가지 함수들은 다음과 같다. //ASC의 ActorInfo를 초기화하는 함수 virtual void InitAbilityActorInfo(AActor* InOwnerActor, AActor* InAvatarActor); //등록되어 있는 AttributeSet을 받아오는 함수 template const T*GetSet() const {..
TargetActor
공격 판정 이전 포스트에서 구현한 콤보 공격에서 공격 판정을 추가로 구현할 것이다. 여태까지의 공격 기능에 흐름은 다음과 같다. 플레이어의 입력에 의해 캐릭터의 EnhancedInput이 감지되어 해당 함수를 실행 사전에 부여한 Ability 중 InputId에 맞는 Ability를 실행 Ability에서 애니메이션을 동작시키기 위해 AT(Ability Task)를 생성하여 실행 AT의 완료 Callback을 받아 마무리 위의 과정에서 애니메이션을 동작하는 부분이 있다. 이는 AnimMontage를 이용하여 애니메이션을 동작한다. GAS에서의 공격판정은 일반적인 UE프로젝트와 다르지 않게 시작된다. AnimMontage에 Notify를 등록하여 원하는 동작에서 공격을 판정하게 할 수 있다. 공격판정을 위..