다양한 기록

[Unreal GAS] 개요 본문

언리얼 엔진/Unreal Ability System

[Unreal GAS] 개요

라구넹 2025. 1. 11. 18:00

Gameplay Ability System

- 액터가 소유하고 발동할 수 있는 어빌리티 및 액터 간의 인터랙션 기능을 제공하는 프레임워크

장점

- 유연성과 확장성

- 모듈러 시스템

- 네트워크 지원

- 데이터 기반 설계

- 완성도 (이미 검증됨)

단점

- 배우는 학습 비용

- 오버헤드 (작은 규모의 프로젝트에는 복잡한 구조가 오히려 부담이 될 수 있음)

 

핵심 구성 요소

어빌리티 시스템 컴포넌트(ASC) : 어빌리티 시스템 컴포넌트

게임플레이 태그(Tag) : 게임플레이 태그, 게임플레이 태그 컨테이너

게임플레이 어빌리티(GA) : 게임 어빌리티, 어빌리티 태스크, 게임플레이 이벤트

게임플레이 이펙트(GE) : 게임플레이 이펙트, 이펙트 실행 계산, 장식 이펙트 - 게임플레이 큐

어트리뷰트(Attribute) : 게임플레이 어트리뷰트 데이터, 어트리뷰트 세트

 

사실 ASC는 다 다룰 수 있는데, 처음 시작하는 거면

ASC -> GA -> GE -> AttributeSet -> ASC

GE -> GameplayCue

GA <-> AbilityTask

이런식으로 작동한다고 보면 됨

게임플레이 태그는 프로젝트 단위에서 모든 시스템을 감쌈

태그로 현재의 상태를 기록 및 파악 가능

 

모듈 두 개

ArenaBattle : 기본 액터, 캐릭터, PC/NPC, 기본 게임 ..

ArenaBattleGAS : 확장된 GAS 게임 모드 및 PC/NPC 캐릭터, GAS 관련 기능 및 연동 UI


C++과 블루프인트

- GAS의 기본 설정은 C++에서 진행되도록 구성되고 세밀한 제어는 C++ 거쳐야 함

- 게임플레이 어빌리티, 게임플레이 이펙트 및 장식 이펙트는 블루 프린트에서 작업이 용이

- 전체적인 GAS 시스템 설정을 C++로 작업, 블루프린트를 활용해 콘텐츠를 제작