게임 프로그래밍의 특수성
- 사용자: 쾌적한 경험을 위해 단일 컴퓨터에서 최대 성능
- 개발자: 게임 규모가 커질수록 방대하고 복잡한 기능을 안정적으로 관리
- C++ 언어 -> 성능 > 안정성
- 하이레벨 언어 -> 안정성 > 성능
- 언리얼은 C++을 확장해 하이레벨 언어가 가지고 있는 모던 객체 지향 설계를 가능하도록 만듦
- 일반 C++ 오브젝트는 F 접두사
- 언리얼 오브젝트는 U 접두사
언리얼 오브젝트
https://docs.unrealengine.com/5.3/ko/objects-in-unreal-engine/
- UObject를 상속
- UCLASS 매크로 태그
오브젝트 생성 부분이 강의의 5.1 버전과 5.3버전이 다름
- 언리얼 5.2 이후로
라고 되어 있음
- UObject는 NewObject 사용
- 매크로 선언만으로 다양한 기능 제공
- 언리얼 헤더 툴
- 헤더 파일 포맷
오브젝트 클래스 생성
- 빌드 하면 파일명.generated.h 파일 자동 생성
- 내부 구조 알 필요도 없고 건드릴 필요도 없음
- C#와 같은 기능들을 제공하기 위한 것
- 지워도 빌드하면 언리얼 헤더 툴이 자동 생성하고 빌드하게 됨