• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

FProperty와 FField가 무엇인가요?

24.06.28 15:55 작성 24.06.28 17:22 수정 조회수 66

0

안녕하세요. 리플렉션 관련 강의를 보다 궁금한게 생겨 질문드립니다.

FProperty* 를 통해 리플렉션을 통해 변수의 값을 가져오는 강의의 내용을 보다가,

FProperty가 뭔지 궁금해서 엔진 코드를 약간 열어보다가 UProperty와 함께 리플렉션을 위한 클래스인 것을 알게 되었습니다.

 

두 개는 각각 FField, UField(이것의 경우 UObject까지 상속받기는 함)을 상속받는데,

FField나 UField나 주석이 똑같이

Base class of reflection data objects.

라고 작성되어 있는데 설명된 문서도 못 찾겠어서 뭔지 잘 모르겠습니다.

 

UField, FField 나 UProperty, FProperty 등 U나 F 접두사가 다른 리플렉션 클래스들이 무엇이 다르고 차이점과 용도가 어떻게 다른 것인가요?

답변 1

답변을 작성해보세요.

1

과거에는 UProperty를 사용했는데, 어느 시점부터 이들이 FProperty로 대체되었습니다.
정확한 이유에 대한 문서는 찾아보기가 어려운데, 리플렉션 값을 조회하는데 굳이 언리얼 오브젝트를 사용하는 것이 불필요해서 일반 C++ 클래스로 제작했을 것으로 추측됩니다.
과거의 UProperty 및 UField 클래스는 사용하는 곳이 없으니 FProperty와 FField로 대체해주시면 될 것 같습니다.

상병님의 프로필

상병

질문자

2024.06.29

답변 감사드립니다. 궁금했는데 해결이 되었습니다.

채널톡 아이콘