반응형
열거형(Enumeration) 비교하기
이번에는 **열거형(Enumeration)**을 어떻게 비교하는지 배워보겠습니다.
정수(Integer) 변수나 부동 소수점(Float) 변수처럼, 우리는 열거형 변수 역시 비교 연산자를 사용하여 비교할 수 있습니다.
1. 열거형 비교 노드 사용하기

- 이전 시간에 만들었던 CharacterMovement 열거형 변수 (E_CharacterMovement 타입)를 이벤트 그래프로 드래그하여 Get 노드를 만듭니다.
- 이 Get 노드의 출력 핀에서 드래그하여 "Equal" (같음) 또는 "Not Equal" (같지 않음)을 검색합니다.
- Equal (==): 열거형 값이 특정 값과 같은지 비교합니다.
- Not Equal (!=): 열거형 값이 특정 값과 같지 않은지 비교합니다. (프로그래밍에서는 느낌표 !와 등호 =를 함께 사용하여 같지 않음을 표현합니다.)
- 노드를 선택하면, 이제 열거형 변수와 비교할 다른 열거형 값을 선택할 수 있는 드롭다운 메뉴가 노드에 나타납니다.
2. 열거형 비교의 활용 예시
예시: 캐릭터가 질주(Sprint) 중일 때는 특정 행동(예: 사격)을 금지하고 싶을 때 이 비교 노드를 사용할 수 있습니다.

- Equal (==) 노드를 연결합니다.
- 비교할 값으로 열거형 목록에서 "Sprint"를 선택합니다.
- 이제 이 비교 노드를 Branch (분기) 노드에 연결하여 조건을 확인합니다.
- 조건: CharacterMovement 상태가 Sprint와 같은가?

- Branch 노드의 True (참) 핀과 False (거짓) 핀에 실행할 코드를 연결합니다.
- True (현재 질주 중인 경우):
- 사격을 금지하고 싶습니다.
- 예를 들어, CanShoot이라는 불리언(Boolean) 변수를 만들고 값을 False로 설정합니다. (이제 플레이어는 사격할 수 없습니다.)
- (원문 예시: 플레이어가 질주 중일 때는 웅크리기나 걷기만 할 수 있게 하고 싶다면 다른 코드를 실행합니다.)
- False (현재 질주 중이 아닌 경우):
- 다른 코드를 실행합니다. (예: 사격 가능하도록 설정)
- 이처럼 열거형을 비교하여 현재 **상태(State)**가 무엇인지 확인하고, 그 상태에 따라 다른 행동을 수행하도록 게임의 **흐름(Flow)**을 제어할 수 있습니다.

이것이 열거형을 비교하는 방법이며, 이 방법을 통해 플레이어의 상태나 게임의 모드 등 다양한 상황에 맞춰 복잡한 로직을 효율적으로 분기하여 구현할 수 있습니다.
반응형
'Unreal Engine' 카테고리의 다른 글
| Unreal Engine 열거형, 멀티 게이트, Switch 활용 예시: 무작위 과일 먹기 (0) | 2025.10.31 |
|---|---|
| Unreal Engine Switch on Enumeration (열거형 전환) 노드 설명 (0) | 2025.10.29 |
| Unreal Engine 열거형(Enumeration) 소개, 생성 및 사용하기 (0) | 2025.10.29 |
| Unreal Engine 게이트 (Gate) 및 멀티 게이트 (Multi-Gate) 노드 설명 (0) | 2025.10.28 |
| Unreal Engine "Do Once" 및 "Do N" 노드 설명 (0) | 2025.10.27 |