Texture 포맷/ DDS 기초
Texture 포맷/ DDS 기초
알고 있는 파일포맷과
그 특징에 대해 얘기해 보자
BMP
GIF
TGA
PSD
PNG
DDS
BMP 무손실
32bit 지원
Rle 압축가능
GIF 손실
8bit 지원
압축, 애니메이션
TGA 무손실
32bit 지원
PSD 무손실
32bit 지원
PNG 비손실
Index / RGB 지원가능 / Alpha 지원가능
DDS 손실
32bit 지원가능
색상과 파일포맷
Color와 Bit수의 관계
월간 마이컴 1990년 3월호
2 = 1bit256 = 8bit = 1byte1024byte = 1Kbyte1024Kbyte = 1M
1Bit 2Bit 4Bit 8Bit 16Bit 24Bit 32Bit …
2Bit 4Bit 8Bit 16Bit 24Bit 32Bit…
* 일명 4gray 칼라
4Bit 8Bit 16Bit 24Bit 32Bit …
2Bit 4Bit 8Bit 16Bit 24Bit 32Bit (64Bit?)
* 팔레트 에니메이션
16BIT : 32*64*32=65,536
RGB =?
16BIT : 32*64*32=65,536
RGB =?
16BIT : 32*64*32=65,536
5bit,6bit,5bit = (R5G6B5)
24BIT : 256*256*256 =16,777,216
8bit,8bit,8bit = (R8G8B8)
32BIT : 256*256*256*256 =4,294,967,296
8bit,8bit,8bit,8bit = (R8G8B8A8)
프로그래밍에서 계산할 때의 단위
32BIT
Float : 부동 소수점
소수점 아래 6번째까지 유효
뭔소리야
대충 ‘소수점 있는 일반적인 수’ 로 알고 있어도..
하지만 한계도 있는…
색상을 float으로 계산할때는? : float3
색상을 float으로 계산할때는? : (float,float,float) (32bit,32bit,32bit) = 당연히 용량이 크다.
Float 으로 색상을 표현하기 Float3(1.0,1.0,1.0) = 24bit (255,255,255) Float3(0.0,0.0,0.0) = 24bit (0,0,0) Float4 (0.5,0.5,0.5,0.5) = 32bit (128,128,128,128)
Float = 256/8bit Color값
이것이 프로그래머가 사용하는 색상값
힘들어 죽겠삼
DDS
DirectX의 Texture Format과일대일로 대응하는 File Format
DirectX를 지원하는 모든 비디오 카드에서
굉장히 빠르게 사용 가능한 File Format
MipMap
http://developer.nvidia.com/object/photoshop_dds_plugins.html
Mipmap 만들어 보기
DDS 2의 승수 사용
픽셀 포맷 DXT1 RGB(No Alpha) : R4G4B4 DXT1 ARGB(1bit alpha) : A1R3G3B3 DXT3 ARGB(Explicit Alpha) : A4R4G4B4 DXT5 ARGB(Interpolated) : A8R4G4B4
DDS 를 쓰지 말아야 하는 경우는?
(단, 압축된 픽셀 포맷의 DDS를 말함)
DDS 를 쓰지 말아야 하는 경우는?
:인터페이스와 같이 텍스쳐의 손실이 적나라하
게 눈에 띄는 경우.
TGA 나 PNG를 사용
DDS
Mipmap 사용가능
Mipmap 제작의 이유
단점 / 필요 없는 경우
MipMap은 만병통치약이 아니다
Mipmap 의 한계
고품질을 위해서 “텍스쳐 필터링” 추가 등의
작업이 필요
DDS
큐브맵
DDS
큐브맵
큐브맵 제작해 보기
DDS
큐브맵
http://blog.naver.com/cerulean9/20011965713
기초만 끝.