언리얼

언리얼 C++ 기본 타입

gamedevlab 2025. 5. 13. 22:28

블루프린트 / C++ 매핑 타입

    • 기본 매핑 타입 블루프린트는 기본적으로 unsigned 정수형을 사용하지 않는다. 블루프린트와 연동이 필요한 변수는 uint 계열 타입 및 double 타입의 사용을 지양해야 한다.

    • Blueprint C++
      Float float
      - double
      Integer int32
      - uint32
      Integer64 int64
      - uint64
      Bool bool
    • 유틸리티 매핑 타입

    • Blueprint C++
      String FString
      Name FName
      Vector FVector
      Rotator FRotator
      Transform FTransform

 

  • 오브젝트 매핑 타입 블루프린트의 오브젝트 레퍼런스는 C++의 포인터에 해당한다. 따라서 할당되지 않은 참조는 실행 시 문제를 야기한다.

  • Blueprint C++
    Object UObject*
    Actor AActor*
    ActorComponent UActorComponent


자주 사용되는 클래스


Class #include
UWorld Engine/World.h
AActor GameFramework/Actor.h
UActorComponent Components/ActorComponent.h
UGameplayStatics Kismet/GameplayStatics.h
UKismetSystemLibrary Kismet/KismetSystemLibrary.h
FMath Math/UnrealMathUtility.h

 

변수 프로퍼티 지정자

변수 프로퍼티 지정자는 다음과 같다. 읽기/쓰기 권한, 에디터 접근 권한, 블루프린트 접근 권한으로 구분된다.

Defaults (클래스 기본값)Instance (레벨 인스턴스)Blueprint (노드 접근)
 

  Defaults Instance Blueprint
RO VisibleAnywhere BlueprintReadOnly
VisibleDefaultsOnly VisibleInstanceOnly
RW EditAnywhere BlueprintReadWrite
EditDefaultsOnly EditInstanceOnly

 

※ 쓰기 권한은 읽기 권한을 포함한다.

Defaults는 클래스 에디터의 디테일 창(클래스 기본값)을 의미한다.

Instance는 월드 아웃라이너에서 레벨에 배치된 액터(인스턴스)를 선택했을 때 나타나는 디테일 창을 의미한다.

Blueprint 관련 지정자(BlueprintReadOnly, BlueprintReadWrite)는 블루프린트 에디터 내에서 해당 변수를 노드로서 사용하는 방식을 정의하며, Defaults/Instance 설정과 독립적이다.

이 값을 설정하지 않으면 해당 변수를 블루프린트 노드로 사용할 수 없다.

간단한 예제

  • VisibleDefaultsOnly: 클래스 기본값 창에서 조회 가능, 수정 불가. 인스턴스 디테일 창에서 조회 및 수정 불가.
  • EditInstanceOnly: 클래스 기본값 창에서 조회 및 수정 불가. 인스턴스 디테일 창에서 조회 및 수정 가능.
  • VisibleAnywhere: 클래스 기본값 창 및 인스턴스 디테일 창에서 조회 가능, 수정 불가.
  • BlueprintReadOnly: 블루프린트 에디터에서 해당 변수의 Get 노드만 사용 가능하다.

더 많은 태그는

https://unreal-garden.com/docs/uproperty/ 참고