카테고리 없음

[TIL] USXUnrealObject 헤더파일 해석

Yellow Kirin 2025. 7. 8. 21:28

#pragma once
// 중복 포함 방지용 헤더 가드

#include "CoreMinimal.h"
#include "UObject/Object.h"
#include "USXUnrealObject.generated.h"
// 언리얼 오브젝트 시스템 및 리플렉션에 필요한 기본 헤더 포함

UCLASS(Blueprintable)
// 이 클래스를 언리얼 리플렉션 시스템과 블루프린트에 노출

class USXUnrealObject : public UObject
// USXUnrealObject는 언리얼의 최상위 오브젝트 클래스인 UObject를 상속

{
    GENERATED_BODY()
    // 언리얼의 메타프로그래밍 코드 자동 삽입 (매우 중요)

public:
    USXUnrealObject();
    // 생성자 (객체가 만들어질 때 실행)

    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="SX")
    int32 SXID;
    // SXID라는 멤버 변수를 에디터와 블루프린트에서 읽기/쓰기 가능하게 노출
    // int32는 32비트 정수 타입

    UFUNCTION(BlueprintCallable, Category="SX")
    void PrintSXID() const;
    // PrintSXID() 함수를 블루프린트에서 호출 가능하게 노출
    // (SXID 값을 출력하는 용도)
};

  • #pragma once : 헤더 파일이 한 번만 포함되도록 방지
  • #include "CoreMinimal.h" : 언리얼 C++ 필수 기본 헤더
  • UCLASS(Blueprintable) : 이 클래스를 블루프린트로 만들 수 있게 해줌
  • GENERATED_BODY() : 언리얼 메타 시스템의 자동 코드 삽입, 반드시 필요
  • UPROPERTY(EditAnywhere, BlueprintReadWrite) : 에디터와 블루프린트에서 값을 직접 읽고/쓸 수 있음
  • UFUNCTION(BlueprintCallable) : 블루프린트에서도 이 함수를 호출할 수 있음
  • public: : 외부에서 접근 가능 (생성자, 멤버 변수, 함수)