- 개요
게임 엔진은 개발자가 생성한 다양한 종류의 물체를 효과적으로 관리하기 위해 물체의 규격을 제시하는데,
이를 일컬어 "GameObject(유니티)" 또는 "Actor(언리얼)"라고 부른다
위와 같은 규격은 게임 엔진에서 콘텐츠를 구성하는 기본 단위로 관리된다
또한 Scene을 구성하는 기본 단위들은 게임 공간에 항상 존재해야 하므로 언제나 공간 배치 정보를 가져야 한다
따라서 GameObject와 같은 기본 단위들은 위치 + 회전 + 크기로 구성된 Transform의 정보로 관리된다

따라서 최종적으로 Scene과 GameObject, 그리고 Trasform의 관계를 위와 같이 정리할 수 있다
- 프로젝트에서의 Scene의 처리

프로젝트에서 사용하는 GameEngine 클래스는 위와 같이 구성되어 있다
Scene을 관리하기 위한 자료구조로 순차 탐색에 유리한 vector를 선택하였다
Scene에 대한 SceneBegin 함수와 SceneEnd 함수가 제공되는데, 이후 렌더링 로직에서 사용한다
CreateNewGameObject 함수를 호출하여 Scene을 구성하는 GameObject를 생성한다
프로젝트에서 GameObject를 생성하는 경우 고유한 이름을 부여해야 한다
이후 부여된 이름은 GameObject의 정보를 가져오는 GetGameObject 함수에서 사용한다
- 프로젝트에서 GameObject의 처리

프로젝트에서 사용하는 GameObject 클래스는 위와 같이 구성되어 있다
위와 같이 게임 공간에서 배치되는 GameObject의 Trasform 정보가 멤버변수로 포함되어 있다
TrasformComponent라는 클래스를 사용하여 Transform 정보를 별도의 클래스로 분리해 관리한다
- 프로젝트에서 Transform의 처리

TransformComponent 클래스는 위와 같이 구성되어 있다
위치(_Position) + 크기(_Scale) + 회전값(_Rotation)을 멤버변수로 갖고 있으며
해당 정보에 쉽게 접근하기 위한 여러 함수를 제공한다
'수학 > 이득우의 게임 수학' 카테고리의 다른 글
| Scene의 구조 (3) - 로컬 공간과 로컬 축 (0) | 2026.01.07 |
|---|---|
| Scene의 구조 (2) - 모델링 행렬의 설계 (0) | 2025.12.31 |
| 게임 엔진의 구성 요소 (0) | 2025.12.24 |
| 무게중심좌표 (0) | 2025.12.03 |
| 메시 (0) | 2025.11.26 |