이전부터 기회가 되면 정리하려고 했는데 마침 요청이 들어와서 작성해 봅니다.
비슷한 내용으로 이전에 올린적이 있긴한데 너무 오래됏기도 하고,
DX11용 BC7이라는 효율좋은 압축포맷이 SE에서 추가되면서
다시한번 제대로 정리하는게 나을 것 같아 다시 써보게 됐습니다.
결론 먼저 올려놨으며 이어서 올려둔 샘플 스샷으로 손실 정도 확인해 보시면 좋을 것 같습니다.
테스트는 1K (1024*1024) 사이즈의 헤드텍스쳐 노말맵을 기준으로 테스트 진행했습니다.
포토샵 CC의 [Nvidia 플러그인] 과 [Intel 플러그인] 으로 저장한 파일을 비교했습니다.
※ 많은 분들이 사용 중인 페인트샵 dds 플러그인은 화질 열화가 있습니다. 사용을 권장드리지 않습니다.
※ 샘플샷을 제작하면서 실수로 DXT1, DXT5 등을 DX1, DX5로 적었습니다. 양해부탁드립니다;
손실 테스트 결과 요약 :
캐릭터용 바디 디퓨즈 : Nvidia DXT1 or Intel Color - BC7 Linear
캐릭터용 기타 텍스쳐 : Nvidia DXT1
캐릭터용 바디 노말맵(_msn) : Nvidia 8.8.8 RGB (무손실)
동료 모드용 바디 텍스쳐 :Nvidia DXT1 or Intel Color - BC7 Linear
동료 모드용 바디 노말맵(_msn) : Intel Color - BC7 Linear or Nvidia 8.8.8
아이템 기타 텍스쳐 : Nvidia DXT1 or DXT5 (Alpha 채널 있으면 5)
아이템 노말맵 (_n) : Nvidia DXT5
큐브맵 (_e) : Nvidia DXT1 RGB, Cube Map Mode
※ Intel BC1, BC3은 설명에서 Nvidia DXT1, DXT5 와 같다고 되어있으나,
테스트결과 픽셀이 튀는 버그가 있었습니다. 따라서 Nvidia 플러그인 사용을 권장드립니다.
플러그인 별 포맷 세팅 방법 :
Nvidia 플러그인
그림에서 네모 표시한 옵션으로 저장하시면 됩니다.
DXT3은 Alpha 채널 저장 시 손실률이 너무 커 현재는 쓰지 않습니다.
Intel 플러그인
저장하려는 텍스쳐에 알파채널(투명 정보)이 없을 경우 오른쪽처럼 Color 로 저장하고,
알파 채널이 있을 경우 왼쪽처럼 Color + Alpha 옵션을 선택해 저장합니다.
BC7 포맷은 SE에서만 사용 가능한 형식입니다.
Color - BC1은 엔비디아의 DXT1과, Color + Alpha - BC3은 엔비디아의 DXT5와 같다고 되어있으나,실제로는 약간 다른 압축 알고리즘을 사용하는 듯 하며 손실정도는 인텔이 좀 더 큰 편입니다.
손실 테스트 상세 결과 :
Test no.1 : Nvidia 8.8.8.8 (5.33 mb) (원본파일)
알파 채널을 포함해 모든 채널을 무손실로 저장하는 포맷입니다.
본 테스트의 샘플로 제작한 파일이며 큰 용량 때문에 실제 인게임용 포맷으로는 일반적으로 사용되지 않습니다.
Test no.2 : Nvidia 8.8.8 (4 mb)
알파채널 없는 무손실로 저장하는 포맷입니다.
기본적으로 바디텍스쳐 노말맵을 저장할 때 사용되는 포맷입니다.
Test no.3 : Nvidia DXT1 (682 kb)
제일 일반적으로 사용되는 손실 압축 방식입니다.
상당한 압축률을 보여주며 원본 해상도가 높을 수록 손실이 적은 특징이 있습니다.
색 경계가 약간 깨져 나오는 경향이 있습니다.
Test no.4 : Nvidia DXT3 (1.33 mb)
지금은 사용되지 않는 알파채널을 포함한 손실 압축 방식입니다.
DXT1에 알파채널을 포함시킨 포맷이며 알파채널에서 그라데이션이 깨지는 것을 확인할 수 있습니다.
Test no.5 : Nvidia DXT5 (1.33 mb)
제일 일반적으로 사용되는 알파채널을 포함한 손실 압축 방식입니다.
RGB채널은 DXT1과 동일하며 알파채널은 보간법으로 그려지므로 부드러운 그라데이션 표현이 가능합니다.
Test no.6 : Intel none32 (5.33 mb)
8.8.8.8과 동일한 무손실 압축입니다. Color에서 none32를 선택해도 알파채널이 포함된 채로 저장되며,
결과적으로 Nvidia의 8.8.8 옵션에 비해 큰 용량 (4mb < 5.33mb)으로 저장됐습니다.
Test no.7 : Intel BC1 linear (682 kb)
인텔 플러그인에서 제공하는 DXT1 포맷입니다.
하지만 Nvidia DXT1보다 손실이 심한 것을 확인할 수 있습니다.※ 다만 저장 속도는 Nvidia보다 약간 더 빠른 것 같았습니다.
Test no.8 : Intel BC3 linear (1.33 mb)
인텔 플러그인에서 제공하는 DXT5 포맷입니다.
마찬가지로 Nvidia DXT1보다 손실이 심한 것을 확인할 수 있습니다.
Test no.9 : Intel BC7 linear (1.33 mb)
SE에서 지원하는 DX11용 BC7 포맷입니다.
무손실 압축과 거의 차이가 없는 품질을 보여주나 일부 경계선에서 블록모양으로 깨지는 (Blocky) 것을 확인할 수 있습니다.
DXT5와 같은 용량이므로 저사양 PC의 바디 디퓨즈나 동료모드의 바디 노말맵 등에 적용 가능할 것으로 보입니다.블록 모양으로 깨지는 현상이 없지는 않으므로 바디 노말맵에 적용하기엔 무리가 있어보입니다.
텍스쳐 관련 질문이나 본문 중 이해가 안가는 부분이 있다면 언제든지 댓글로 남겨주세요.
'Guides' 카테고리의 다른 글
[SE→LE] 애니메이션 백포팅 튜토리얼 (1) | 2020.09.01 |
---|---|
[LE/SE] COC 콘솔로 이동가능한 지역 id 목록 (0) | 2020.09.01 |
낮은 명도로 텍스쳐 저장할때 칼라노이즈 해결법 (0) | 2019.11.12 |
텍스쳐 리터칭을 위한 스카이림 텍스쳐 & 쉐이더 세팅 가이드 (2) | 2017.06.19 |
엘7에 쌌던 정보글 + 스게 원본 정보글 (2) | 2016.02.07 |