유니티/모뉴먼트 밸리 모작

[Unity] 모뉴먼트 밸리 모작 - 1. 착시현상 구현

이름?없음 2024. 2. 22. 16:23
반응형
반응형

3D 착시현상 게임의 대표라고 할 수 있는 모뉴먼트밸리

이번 글에서는 모뉴먼트밸리를 따라 만들어보며 여러 가지를 배워보도록 하겠습니다

 

우선 모뉴먼트밸리의 가장 기본이라고 할 수 있는 착시현상을 구현해 보도록 하겠습니다

 

먼저 카메라설정부터 해야 합니다

우선 카메라의 Projection을 perspective에서 orthographic으로 바꿔주세요

그 후 ClearFlags를 Skybox에서 SolidColor로 바꾸어주시고 Background를 좋아하는 색상으로 바꿔주세요

그 후 Top레이어를 하나 추가해 주세요

카메라의 CullingMask를 Top레이어를 제외한 전부로 설정해 주세요

그 후 카메라를 복사한 후 자식으로 넣어주세요

이 카메라를 DepthCamera라고 부르겠습니다

이제 DepthCamera의 ClearFlags를 DepthOnly로 설정하고 Depth를 1로 설정해 주세요

그 후 DepthCamera의 CullingMask를 Top으로 설정해 주세요

이런 식으로 하신다면 Top레이어를 가진 오브젝트가 다른 오브젝트보다 앞에 랜더링 되는 것을 확인하실 수 있습니다

이런 식으로 벽 뒤에 빨간 큐브가 있지만 벽을 뚫고 보이는 것을 확인하실 수 있습니다

이것을 이용하여 모뉴먼트 밸리의 착시현상을 구현할 것입니다

 

우선 간단한 레벨을 만들어 보겠습니다

저는 모뉴먼트 밸리의 1 스테이지를 참고하여 제작하도록 하겠습니다

기본 도형인 Cube를 사용하여 마치 마인크래프트를 하는 것처럼 제작해 주시면 됩니다

V키를 누르고 오브젝트를 클릭하면 정점 스냅이 되어서 만드실 때 더 편하실 겁니다

 

여기 움직이는 다리 부분은 구분해서 따로 제작한 후

지금 선택되어 있는 오브젝트가 있는 부분에 빈 오브젝트를 하나 생성해 주세요

그 후 그 빈 오브젝트의 자식으로 구분해 놓은 다리블록들을 전부 넣어주세요

알맞게 따라 하셨다면 X축을 회전시켰을 때 이런 식으로 돌아가야 합니다

그 후 나머지 맵을 전부 따라 만들어주세요

저는 착시현상을 감안하여 이런 식으로 만들어 주었습니다

그 후 카메라가 맵을 바라보도록 조절해 주세요

저는 이런 식으로 조정했습니다

여기서 꼭 카메라의 x축회 전은 35도 여아 합니다

하지만 다리를 돌려 보아도 모뉴먼트 밸리처럼 착시현상이 일어나지 않습니다

이제 착시현상이 일어나게 하겠습니다 빨간 다리와 겹치는 부분의 길 오브젝트를 선택해 주세요

그 오브젝트의 자식으로 Quad를 2개 추가해 주세요

Quad를 상자의 Y축면과 X축면에 배치해 주세요

Quad의 레이어를 Top으로 바꾸어주세요

다 됐습니다 이제 다리를 돌려보면 착시현상이 잘 일어나는 것을 확인하실 수 있습니다

BLOG.unitypackage
0.04MB

 

중간에 이해가 안 되거나 따라 하기 어려우신 분들을 위해 이번글의 내용을 유니티 패키지로 만들어 두었습니다

다음 글에서는 플레이어의 움직임을 구현해 보도록 하겠습니다

반응형