본문 바로가기

Unreal 게임 개발/Unreal 강의 개인 정리11

Unreal Interface Interface 객체가 반드시 구현해야할 행동을 지정하는데 활용되는 타입 다형성의 구현과 의존성 분리 설계에 유용하게 활용된다. Unreal에서 Interface 예시 World에 배치되는 모든 오브젝트 -> Actor 움직이는 오브젝트 -> Pawn - 즉, Pawn은 Actor 중에 Pawn으로서 움직임을 구현해야한다. Pawn은 INavAgnentInterface를 통해 길찾기 시스템이 구현되어야 한다. 구현될 때 예시 Person 안에 Student, Staff, Teacher가 있다. Student와 Teacher는 수업에 반드시 참여해야하며, Staff는 참여가 불가하다. 그렇다면 Student와 Teacher는 Lesson Inteface를 통해 수업과 관련된 내용을 작성해주면 된다. 수업.. 2023. 12. 27.
Unreal 기본타입 및 문자열 Unreal 기본 타입을 따로 지정하는 이유 게임 제작 시 데이터 정보가 명확해야한다. 단일 컴퓨터에서 최대 퍼포먼스를 뽑아내야한다. 네트워크상에서 데이터 통신이 효율적이고 안정적이어야한다. PC, PS, XBox등 다양한 기기에서 C++함수에 대해 다르게 해석하는 경우가 있었다. 이를 '플랫폼 파편화'라고 한다. 이러한 문제를 해결하기 위해서 기본 타입을 지정한다. 간단한 예시로 C++의 경우 최소 32비트를 보장하도록 규정되어 있지만 특정 플랫폼에서는 64비트로 해석될 수 있다. 그렇기에 데이터를 지정할 때 int의 크기를 확신할 수 없는 문제가 있었지만 Unreal은 int32, int64처럼 명확하게 지정한다. C#의 경우 int는 항상 32비트로 해석하도록 되어있다. 이렇게 명확하게 함으로써 단.. 2023. 12. 26.
Unreal Object Reflection System & UClass Unreal Object Reflection System Unreal Object Reflection System은 Unreal 테크놀로지의 근간이며 에디터의 디테일 패널, Serialization, CG, 네트워크 리플리케이션, BP/C++ 등 다수의 시스템에 탑재 되어있다. Unreal에서 자체적으로 시스템을 구축한 것이다. 헤더에 이 Reflection System을 고려해야한다는 것 UHT(Unreal Header Tool)에 알려주는 방법이 우리가 자주 봐왔던 “~~~.generated.h”이다. 이 Reflection System은 필수가 아니며 Reflection System에 보이도록 하는 유형이나 프로퍼티를 주석에 달아주면 UHT가 컴파일할 때 정보를 수집한다. 주석을 다는 방법은 UEN.. 2023. 12. 18.