icon안동민 개발노트

변수 유형과 기본 활용법


 변수는 블루프린트 프로그래밍의 핵심 요소로, 데이터를 저장하고 관리하는 데 사용됩니다.

 이 절에서는 블루프린트에서 사용되는 다양한 변수 유형과 그 활용법을 살펴보겠습니다.

기본 변수 유형

 1. 정수 (Integer)

  • 설명 : 소수점이 없는 정수 값
  • 범위 : -2,147,483,648 ~ 2,147,483,647
  • 사용 예 : 점수, 레벨, 카운터

 2. 실수 (Float)

  • 설명 : 소수점이 있는 숫자
  • 정밀도 : 소수점 이하 6-7자리
  • 사용 예 : 속도, 거리, 시간

 3. 불리언 (Boolean)

  • 설명 : 참(true) 또는 거짓(false) 값
  • 사용 예 : 스위치 상태, 조건 체크

 4. 문자열 (String)

  • 설명 : 텍스트 데이터
  • 사용 예 : 플레이어 이름, 대화 내용

 5. 벡터 (Vector)

  • 설명 : 3D 공간의 위치나 방향
  • 구성 : X, Y, Z 값
  • 사용 예 : 오브젝트 위치, 이동 방향

 6. 로테이터 (Rotator)

  • 설명 : 3D 회전 정보
  • 구성 : Pitch, Yaw, Roll
  • 사용 예 : 오브젝트 회전, 카메라 방향

변수 생성 및 초기화

  1. 'My Blueprint' 패널에서 '+' 버튼 클릭
  2. 변수 이름과 유형 설정
  3. 필요에 따라 기본값 설정

 예제 : 플레이어 체력 변수 생성

변수 이름: PlayerHealth
유형: Integer
기본값: 100
카테고리: PlayerStats
툴팁: "플레이어의 현재 체력"

변수 값 설정 및 읽기

 값 설정 (Set)

  • 그래프에서 변수를 끌어다 놓고 'Set' 선택
  • Set 노드의 입력에 원하는 값 연결

 값 읽기 (Get)

  • 그래프에서 변수를 끌어다 놓으면 자동으로 Get 노드 생성
  • Get 노드의 출력을 다른 노드의 입력에 연결

변수 가시성 설정

  • Private : 현재 블루프린트 내에서만 접근 가능
  • Protected : 현재 블루프린트와 상속받은 블루프린트에서 접근 가능
  • Public : 모든 곳에서 접근 가능

 가시성은 변수의 'Details' 패널에서 설정할 수 있습니다.

변수 카테고리 구성

  1. 변수 선택 후 'Details' 패널에서 'Category' 설정
  2. 새 카테고리 이름 입력 또는 기존 카테고리 선택

 카테고리를 사용하면 관련 변수들을 그룹화하여 관리할 수 있습니다.

고급 변수 유형

 1. 구조체 (Struct)

  • 설명 : 여러 변수를 하나의 단위로 그룹화
  • 사용 예 : 플레이어 정보 (이름, 체력, 경험치 등)

 2. 열거형 (Enum)

  • 설명 : 미리 정의된 상수 집합
  • 사용 예 : 게임 상태, 아이템 유형

 3. 객체 참조 (Object Reference)

  • 설명 : 다른 액터나 컴포넌트에 대한 참조
  • 사용 예 : 플레이어 컨트롤러, 인벤토리 시스템

 4. 배열 (Array)

  • 설명 : 같은 유형의 변수들의 집합
  • 사용 예 : 적 목록, 아이템 인벤토리

변수 활용 예제

  1. 플레이어 체력 시스템
변수:
- PlayerHealth (Integer)
- MaxHealth (Integer)
- IsAlive (Boolean)
 
로직:
[데미지 이벤트] --> [PlayerHealth 감소] --> [IsAlive 체크]
                                       --> [체력바 UI 업데이트]
  1. 아이템 획득 시스템
변수:
- Inventory (Array of ItemStruct)
- MaxInventorySize (Integer)
 
로직:
[아이템 획득 이벤트] --> [Inventory 크기 체크] --> [아이템 추가]
                                            --> [UI 업데이트]

변수 관리 팁

 1. 명명 규칙 준수

  • 의미 있고 일관된 이름 사용
  • 예 : bIsJumping (불리언), PlayerName (문자열)

 2. 기본값 설정

  • 초기화 오류 방지를 위해 적절한 기본값 설정

 3. 변수 설명 추가

  • 'Details' 패널의 'Tooltip' 필드에 변수 설명 추가

 4. 인스턴스 편집 가능 설정

  • 레벨에 배치된 인스턴스에서 값을 수정할 수 있도록 설정
  • 'Details' 패널에서 'Instance Editable' 체크

 5. 변수 복제 설정

  • 멀티플레이어 게임에서 변수를 네트워크로 동기화
  • 'Details' 패널에서 'Replicated' 체크

효과적인 변수 사용을 위한 추가 팁

 1. 타입 안전성 유지

  • 가능한 한 정확한 타입 사용 (예 : Integer 대신 Float 사용 시 주의)

 2. 변수 범위 최소화

  • 전역 변수 사용을 최소화하고, 필요한 범위에서만 변수 사용

 3. 상수 활용

  • 변경되지 않는 값은 상수로 선언 (예 : MaxHealth)

 4. 변수 그룹화

  • 관련 변수들을 구조체나 열거형으로 그룹화하여 관리

 5. 디버그 모드 변수 설정

  • 개발 중에만 사용할 변수는 'Development Only' 옵션 활성화

 변수는 블루프린트 프로그래밍의 기초이며 효과적인 변수 관리는 깔끔하고 유지보수가 쉬운 코드를 작성하는 데 핵심적입니다.

 다양한 변수 유형을 적절히 활용하고 일관된 명명 규칙과 구조화된 관리 방법을 적용함으로써 복잡한 게임 로직도 명확하고 효율적으로 구현할 수 있습니다.