Unity는 2D 또는 3D 게임 제작에 모두 적합한 엔진입니다. Unity에서 새 프로젝트를 생성하면 2D 또는 3D 모드 중 어느 모드로 시작할지 선택할 수 있습니다. 이미 어떤 모드로 빌드할 지 결정했을 수도 있으나, 결정에 영향을 줄 수 있는 몇 개의 미묘한 차이점이 있습니다.
2D와 3D 중 어느 모드로 시작하는지에 따라 Unity 에디터의 설정이 몇 가지 달라집니다. 예를 들어, 이미지를 임포트할 때 결과물이 텍스처인지 스프라이트인지가 달라집니다. 하지만, 프로젝트를 생성한 시점에서 선택한 모드와 무관하게 언제든지 2D나 3D 모드로 바꿀 수 있습니다(2D 또는 3D 모드 설정 참조). 아래를 참조하여 원하는 모드를 선택합니다.
3D 게임은 보통 3차원 기하 모델을 활용합니다. 즉, 게임 오브젝트의 표면에 머티리얼과 텍스처를 렌더링하여, 오브젝트가 부피감 있는 환경, 캐릭터, 오브젝트로 표현되며 게임 세계를 구성하도록 합니다. 카메라는 씬 안으로 또는 씬 주변을 자유롭게 이동할 수 있고, 조명과 섀도우가 현실감 있게 월드를 비춥니다. 3D 게임에서는 보통 원근 뷰를 사용하여 씬을 렌더링하므로 오브젝트는 카메라에 가까워질수록 화면에서 더 크게 나타납니다. 위 설명에 해당하는 게임이라면 3D 모드에서 시작합니다.
3차원 지오메트리를 사용하지만 원근 카메라 대신 직교 카메라를 사용하는 게임도 있습니다. 게임에서 자주 활용되는 기법으로써, 액션을 조감도로 볼 수 있으며 “2.5D”라고도 부르는 기법입니다. 이런 종류의 게임을 만들 경우 Unity 에디터를 3D 모드로 설정해야 합니다. 원근감이 없다고 해도 결국 3D 모델과 에셋을 가지고 작업해야 하기 때문입니다. 대신 카메라와 씬 뷰 설정을 Orthographic으로 변경해야 합니다.
(위 씬의 출처, Synty Studios와 BITGEM)
2D 게임은 보통 스프라이트라고 부르는 3D 요소가 전혀 없는 평면 그래픽스를 사용합니다. 이 경우 화면에 평면 이미지로 그려지며, 게임의 카메라에도 원근감이 없습니다. 이런 종류의 게임을 개발하려면 에디터를 2D 모드로 시작해야 합니다.
2D 게임 중에는 배경과 캐릭터에는 3차원 지오메트리 모델을 사용하지만 게임 플레이는 2차원으로 제한하는 경우가 있습니다. 예를 들어, 카메라는 횡스크롤 뷰를 보여주고 플레이어는 2차원 방향으로만 움직일 수 있지만, 게임에 장애물 표현을 위해 게임 자체는 3D 모델을 사용하고 카메라 역시 3D 시점을 사용하는 경우입니다. 이 경우 3D 효과는 기능보다는 미적 요소를 목적으로 사용됩니다. 이런 타입의 게임 또한 “2.5D”라고 종종 부릅니다. 게임 플레이는 2D이지만 게임 개발을 위해서는 거의 3D 모델을 조작하게 되므로, 이런 경우 에디터를 3D 모드로 시작해야 합니다.
2D 그래픽스에 원근 카메라를 사용하여 패럴랙스 스크롤 이펙트를 주는 2D 게임 역시 인기 있는 게임 스타일입니다. 소위 “카드보드 씨어터” 스타일 씬으로써, 모든 그래픽스를 평면으로 표현하되 카메라로부터의 거리는 각각 다르게 둡니다. 이 경우엔 2D 모드로 개발하는 것이 가장 적합합니다. 다만, 카메라의 투사 모드는 ** Perspective 로 설정하고 씬 뷰 모드는 3D**로 변경해야 합니다.
참고: 위 씬의 출처는 One Point Six Studio입니다.*