인프런 [이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템] 강의 공부 노트
이득우 교수님께서 스킬 기반의 복잡한 시스템 사용 시, GAS의 프레임워크 공부를 권장한다고 하셨다.
교육 과정에는 포함되어있지 않아, 이득우 교수님의 온라인 강의를 따로 찾아보게 되었다.
GameAbilitySystem?
장점
- 유연성과 확장성 → 생산성 차이
- 모듈화 시스템 → 독립적인 기능으로 전체에 영향이 적음
- 네트워크 멀티플레이 지원
- 데이터 기반 설계
- 높은 완성도의 프레임워크
단점
- 학습 비용이 큼
- 오버헤드 → 작은 프로젝트라면 GAS 도입이 너무 큰 비용일 수 있음
5가지 구성 요소
- ASC (Ability System Component): GAS 프레임워크를 관리하고 처리하는 액터 중앙 처리 장치
- Gameplay Tag : 현재 프로젝트 레벨에서 액터들의 상태나 행동 관리
- GA (Gameplaye Ability) : 모든 스킬, 액션 발동의 시작
- GE (Gameplay Effect) : 게임 플레이 어빌리티 발동에 의한 영향
- Attribute : 데이터
GAS의 흐름
액터에 AbilitySystemComponent 생성으로 어빌리티 부여
→ 어빌리티가 조건에 맞으면 발동
→ 발동으로 인한 Effect 발동
→ Attribute에 영향 (데이터 변동)
Task
일정 시간이 걸리는 작업들은 Task로 단위화.
Task들을 조합하여 원하는 액션 제작 가능하도록 설계.
Gameplay Cue
Effect 발동으로 인한 시각/청각적 특수 효과 : Gameplay Cue
GAS의 사용 시에는 C++과 블루프린트 모두를 적절하게 혼용하는 것이 가장 효과적이다!
C++로 기반을 다진 후, 블루프린트로 GE, Gameplay Cue 제작.
Unreal을 처음 배우며 엔진 내에서 이렇게 베이스 프레임워크가 아닌 큰 프레임워크가 존재할 것이라고 생각하지 못했는데,
새롭게 배우며 소스 코드 관찰할 생각을 하니 벌써부터 재밌다!
공부하며 바로바로 현재 프로젝트에도 적용해 볼 생각이다.
'UnrealEngine5 > 공부' 카테고리의 다른 글
[UE5/GAS] GAS와 CharacterPlayer, GA와 AbilityTask (0) | 2025.05.28 |
---|---|
[UE5/GAS] GameAbilitySystem기초_Actor와 GAS, Gameplay Tag (1) | 2025.05.27 |
[UE5] Transform Scale과 Shape Extent의 차이 (0) | 2025.04.16 |
[UE5] Dedicated server 전용 서버 독학하기 1) 공식 문서 튜토리얼 (0) | 2025.04.09 |
[UE5] !!반환을 하는 이유 (0) | 2025.04.09 |