본문 바로가기

프로그래밍/언리얼

UClass와 Reflection

UClass

 : 언리얼 오브젝트의 타입 정보를 담고 있다

 

UClass 정보는 컴파일타임이든 런타임이든 원할 때 가져올 수 있다

 

컴파일 타임에서는 언리얼 오브젝트 선언에 있는 StaticClass를 사용하고

런타임에서는 언리얼 오브젝트 인스턴스에서 GetClass()함수를 사용해 가져올 수 있다

 

StaticClass 함수는 선언하지 않아도 언리얼 헤더툴에 의해 자동으로 생성된다

 

Reflection

 : 언리얼 오브젝트의 타입 정보를 검색하고 함수를 호출하거나 속성에 값을 설정한다

 

언리얼 오브젝트 클래스의 

멤버 변수에는 UPROPERTY 매크로를

멤버 함수에는 UFUNCTION 매크로를 지정해주어야 한다

 

-> 언리얼 오브젝트 클래스에서 UPROPERTY와 UFUNCTION 매크로로 지정된 멤버 변수와 멤버함수모두 검색이 가능하다

-> 필드의 타입 정보와 이름만 알고 있으면 특정 인스턴스 내 값을 변경하거나 함수를 호출하는 것이 가능하다