내일배움캠프-언리얼

[내일배움캠프 - 언리얼] DAY 35 - GAS 1강

이시보 2026. 1. 19. 17:54

GameplayTags로 게임 설계

점(.)으로 구분된 계층적 문자열 태그 시스템

Character
├── State
│   ├── Jumping
│   ├── Attacking
│   └── Blocking
└── Status
    ├── Stunned
    └── Invincible

Combat
├── Window
│   ├── Combo
│   └── Parry
└── Type
    ├── Melee
    └── Ranged

특징

- FName 기반 (경량, 빠름)

- 에디터에서 관리 가능

- 네트워크 복제 자동

Tag 예시

// C++ 예시 (참고용)
FGameplayTagContainer CharacterTags;

// Tag 추가
CharacterTags.AddTag(FGameplayTag::RequestGameplayTag("Character.State.Jumping"));

// Tag 제거
CharacterTags.RemoveTag(FGameplayTag::RequestGameplayTag("Character.State.Jumping"));

// Tag 확인
bool bIsJumping = CharacterTags.HasTag(FGameplayTag::RequestGameplayTag("Character.State.Jumping"));

Tag 명명 규칙

규칙카테고리.서브카테고리.구체적이름