- 순서
- Unreal C++ 매크로란?
- 주요 매크로
- Unreal C++ 매크로란?
- 언리얼 엔진의 헤더 툴(UHT)이 처리하는 특별한 주석/메타데이터.
- C++ 코드에 리플렉션(reflection) 정보를 추가하여 기능
- 에디터에 속성을 노출
- 블루프린트와 상호작용
- GC(Garbage Collection)대상 객체로 관리 가능
- 컴파일 전에 UHT가 읽어들여 자동 코드 생성 및 메타데이터 등록
- 주요 매크로
- 클래스 관련
- UCLASS(): 언리얼이 이 클래스를 관리하도록 표시
- USTRUCT(): 언리얼에 구조체 등록
- UENUM(): 언리얼에 열거형 등록
- UINTERFACE(): 언리얼 인터페이스 클래스 등록
- GENERATED_BODY(): 헤더 툴이 가상 함수 테이블, 리플렉션 데이터, 직렬화 함수 등을 자동 생성
- 변수 관련
- UPROPERTY(): 멤버 변수를 에디터/블루프린트에 노출
- ex)UPROPERTY(EditAnywhere, BlueprintReadWrite, Catetory="")
- EditAnywhere: 에디터에서 수정 가능
- BlueprintReadWrite: 블루프린트에서 읽고 쓸 수 있음
- Category: 디테일 패널의 카테고리 이름
- UPARAM(): 함수 매개변수에 메타데이터 추가
- UPROPERTY(): 멤버 변수를 에디터/블루프린트에 노출
- 함수 관련
- UFUNCTION(): 함수를 블루프린트에 노출하거나 RPC로 사용
- ex)UFUNCTION(BlueprintCallable, Category="")
- BlueprintCallable: 블루프린트에서 호출 가능
- UFUNCTION(): 함수를 블루프린트에 노출하거나 RPC로 사용
- 클래스 관련
- 주의할 점
- UPROPERTY() 없이 Unreal의 GC가 관리하지 못하면 메모리 릭 발생 가능
'Unreal Engine' 카테고리의 다른 글
| [UE]언리얼 오브젝트 (0) | 2025.08.28 |
|---|---|
| [UnrealEngine] Enhanced Input System (0) | 2025.08.01 |
| [Unreal Engine] 리플렉션 시스템 (0) | 2025.07.09 |
| [Unreal Engine]Unreal_C++ 빌드 프로세스 (0) | 2025.07.07 |
| [Unreal Engine] Actor의 라이프사이클 (2) | 2025.07.01 |