언어:
페이지 정보
수준별:
엔진 버전:
언리얼 엔진

큐브맵 만들기

언리얼 엔진

큐브맵 제작에 대한 개요, 포토샵에서 큐브맵 조합시 고려할 사항에 대한 문서입니다.

큐브맵 만들기

큐브맵을 만들려면 X, Y, Z 좌표 양수와 음수 방향의 광경을 나타내는 여섯 장의 이미지 시리즈만 있으면 됩니다. 물론 이러한 이미지는 제대로 조합해야 하며, 그러기 위해 고려해야 할 것이 몇 가지 있습니다.

포토샵용 NVIDIA Texture Tools 플러그인 (32bits/Channel, 8.8.8.8 ARGB 32 bpp, unsigned) 을 사용하여 큐브맵을 만들 때는 여섯 장의 이미지를 매우 특정한 방식으로 배치해 줘야 합니다. 플러그인이 여섯 장의 이미지를 찾을 때는 전부 같은 도큐먼트에, 나란히, 이런 식으로 배치되어 있습니다:

양수 X 축, 음수 X 축, 양수 Y 축, 음수 Y 축, 양수 Z 축, 음수 Z 축

CubeMapNvidiaLayout.png

포토샵에서 익스포트하여 언리얼로 임포트하고 나면, 에디터는 이것을 합성하여 멋진 큐브맵을 만듭니다. 그런데 이 예제에서 보면 일부 이미지에 흥미로운 로테이션이 적용된 것을 알 수 있습니다. 그 이유는 NVIDIA 플러그인이 각 이미지에서 큐브맵을 조합하는 방식 때문입니다.

큐브맵으로 임포트한 뒤 언리얼의 텍스처 에디터 창에 펼쳐놓은 결과는 이렇습니다:

CubeMapNvidiaLayout_cubemapped.png

큐브 크기에 올바른 쪽이 위로 올 수 있도록 이미지 일부에 특수 로테이션을 적용하는 것입니다.

이 로테이션 계획을 빠르고 간단히 살펴보면 다음과 같습니다:

로테이션

양수 X

반시계방향 90 도 회전

음수 X

시계 방향 90 도 회전

양수 Y

180 도 회전

음수 Y

무회전

양수 Z

양수 Y 축에 맞춰야 하는 쪽을 위로

음수 Z

양수 Y 축에 맞춰야 하는 쪽을 위로

큐브맵 이미지 로테이션 시각화

큐브맵을 처음 만들 때 이미지를 어떻게 배치할 것인가를 항상 쉽게 알 수 있는 것은 아닙니다. 포토샵용 NVIDIA Texture Tools 플러그인에 사용할 이미지를 어떻게 해야 올바르게 배치할 수 있을지, 다음 방법이 도움이 될 수 있습니다.

큐브맵에 쓸 이미지 로테이션을 그려보는 가장 쉬운 방법은 아마도, 직교좌표계 축(Cartesian axis)에 맞춰 땅바닥에 누운 상태를 상상해 보는 것입니다. 양수 Z 축 (위쪽) 방향을 바라보면서 오른쪽이 X 축이고 머리 위쪽이 Y 축인 상태, 즉 다음과 같습니다:

CubeMapOrientation.png

그러나 이런 방향 규정이 큐브맵 레이아웃에 어떤 역할을 하는지는, 여섯 방향 시야를 나타내는 다음 이미지 여섯 장을 살펴 봅시다.

Cubemap_PositiveX.png Cubemap_NegativeX.png Cubemap_PositiveY.png Cubemap_NegativeY.png Cubemap_PositiveZ.png Cubemap_NegativeZ.png

현재, 이 모든 이미지는 위아래 똑바로 회전시킨 것입니다. 일부는 다시 회전시켜 줘야 올바르게 맞아 떨어집니다. 그러면 위의 예로 되돌아가서 바닥에 누워있다고 상상해 봅시다. 고개를 오른쪽으로 돌렸다고 칩시다. 그러면 X 축을 내려다보는 것입니다. 그런데 여전이 등을 대고 누워있는 것이기에, 시야는 머리를 기준으로 반시계방향 90 도 회전된 것으로 보일 것입니다:

Cubemap_PositiveX_Vis.png

그런 다음 다시 고개를 왼쪽으로 돌렸다면, 이런 음수 X 축을 보게 됩니다:

Cubemap_NegativeX_Vis.png

양수 Y 축 이미지를 보자면 머리를 뒤로 돌려야 할 것입니다. 그러면 시야가 거꾸로 보이겠지요:

Cubemap_PositiveY_Vis.png

음수 Y 축 이미지를 보자면, 발 아래쪽을 보는 것이니 이래 보이겠죠:

Cubemap_NegativeY_Vis.png

양수 Z 축 이미지는 그려보기가 꽤 쉽습니다. 처음 시작할 때 보는 광경일 테니까요:

Cubemap_PositiveZ_Vis.png

음수 Z 축 이미지를 보려면, 몸을 홱 돌려 바닥 아래를 봐야 할테니, 이런 모습입니다:

Cubemap_NegativeZ_Vis.png

그 이미지 전부를 만들고서 올바르게 회전시켜 주고 나서는, 다음과 같은 순서로 하나의 파일에 늘어 놓아 주면 됩니다:

X+, X-, Y+, Y-, Z+, Z-

그러면 다음과 같은 이미지가 생기는 것입니다:

Uffizi_Cubemapped.png