DirectX3D 줄여서 D3D 에서 Animation & Terrain 이후
CubeMap을 배우게 되어 큐브맵(확장자 .dds)를 만들기위한 방법을 정리합니다.
Step 1
우선 큐브맵을 만들기위한 프로그램으로 DxTex가 필요합니다.
해당 프로그램을 실행시키기 위해서는 DirectX SDK의 설치가 필요합니다.
https://www.microsoft.com/en-us/download/confirmation.aspx?id=6812
Tip. s1023 error 는 아래를 참고해주세요
Step 2
SDK의 설치가 완료 되었다면 DxTex.exe 실행파일을 찾습니다.
설치시 따로 경로를 지정하지 않았다면 경로는 아래와 같습니다.
C: \ Program Files (x86) \ Microsoft DirectX SDK (June 2010) \ Utilities \ bin \ x64
x64 폴더의 내부에 DxTex.exe 를 실행합니다.
Step 3
파일실행시 아래와 같은 화면이 뜨게 됩니다.
프로그램실행후 좌측 상단의 File > NewTexture 를 클릭하하고
Texture Type 을 Cubemap Texture 로 설정 한뒤 OK로 생성합니다.
처음 생성시에는 작은 창이 하나만 있습니다.
큐브맵은 6장의 이미지를 큐브형태로 배치하여 배경처럼 사용하기때문에 각각의 면에 이미지를 넣어줄 창을 추가적으로 생성해줘야 합니다.
새로운창은 메뉴에서 Window 메뉴를 선택한뒤 New Window를 통하여 생성이 가능합니다.
총 6개의 창이 필요하므로 5번 반복합니다.
Step 4
6개의 창이 적당한 위치에 생성이 되었습니다.
이때 마음대로 배치해서 이미지를 넣어주어도 되지만 저는 제가 사용하는 프레임 워크에 필요한 좌표대로 파악하기 쉽도록 배치 하겠습니다.
아래와같이 X,Y,Z 3개축의 Positive(+) 그리고 Negative(-) 의 위치대로 배치하였습니다.
이제 각각의 창을 선택하여 창의 위치를 설정하여 줍니다.
창은 클릭하면 선택이 됩니다.
(창하나를 확대해보면 default 값으로 창은 Positive X 입니다.)
창을 선택후 View 메뉴에서 Cube Map Face 를 통하여 창의 위치를 설정할 수 있습니다.
각각의 창 하나하나를 선택한후 위의 좌표대로 설정하여 주도록 합니다.
마지막으로
창의 설정이 완료되었다면 준비된 이미지를 각각의 창에 불러와 주도록 합니다.
자연스럽게 연결된 이미지가 아니라면 이미지간의 차이가 보이기 때문에 적당한 이미지를 구할수 있는 사이트를 참고하도록 하겠습니다.
아래의 사이트에서 큐브맵 전용 이미지들을 쉽게 받아 사용할 수 있습니다.(큐브맵 미리보기 가능)
https://www.humus.name/index.php?page=Textures
큐브맵을 만들 이미지 준비가 완료 되었다면
각각의 창에 하나하나 이미지를 넣어주도록 합니다.
창선택후 > File 메뉴 > Open Onto This Cubemap Face... 으로 이미지를 불러옵니다.
이미지를 모두 불러와 좌표와 적절지 확인한뒤 저장하면 dds 파일이 완성 됩니다.
위의 샘플이미지를 적용시킨 예시 입니다.
가로세로 256 픽셀로 설정되었기 떄문에 품질이 좋지 않습니다.
고화질 이미지의 원본크기를 사용하고 싶다면 창을 처음 생성할 때에 창 크기를 이미지의 가로세로에 맞추도록 합니다.
'공부 > DirectX3D' 카테고리의 다른 글
[DirectX3D] RTT구현(미니맵만들기) (0) | 2023.08.16 |
---|---|
[DirectX3D] 환경 맵핑(Environment Mapping) (0) | 2023.08.08 |
[DirectX3D/ASSIMP] ASSIMP 코드 정리(진행중) (0) | 2023.06.28 |
[DirectX3D/ASSIMP] ASSIMP 구조 (0) | 2023.06.21 |
[DirectX3D / Graphics] 조명효과 (Ambient . Diffuse . Specular . Phong Reflection) (1) | 2023.06.07 |
댓글