SlideShare a Scribd company logo
1 of 62
Download to read offline
Display color와
Digital Texture Format의 이해
색영역
가산혼합과 감산혼합
가산혼합 : 빛의 색상. 섞을수록 흰색에 가깝게 된다 R.G.B
감산혼합 : 물감, 안료등 실제의 색상의 혼합. 섞을수록 검정색에 가깝게 된다 C.M.Y.K
색재현율에 따른 색영역 비교
(NTSC : National Television System committee. 국가 텔레비전 시스템 위
원회)
색영역별 비교
SWOP CMYK : us.web coated
Gamut Warning(색 영역 경고)
인쇄 가능 색영역 확인
View >> Gamut Warning
Gamut Warning 확인 후 보정하여 출력하거나 CMYK 모드로 작업하여 출력.
Display color
1Bit Color
0, 1로만 표시되는 display. 소형 액정, 가전에 많이 사용.(지금도 많이 사용된다)
2Bit Color
IBM의 CGA(Color Graphic Adaptor)00, 01, 10, 11 4color 표현
4Bit Color
16색을 사용. EGA(Enhanced Graphics Adapter) 640x350 해상도 지원.
국내에선 허큘리스에서 VGA로 전환되었기에 많이 보이지 않았지만 해외에선 꽤 오랜기간 사용
삼국지 1편 울펜스타인3D
8Bit Color
256색 color. 그래픽 카드를 이야기 하는 VGA(Video Graphics Adapter)와 VGA(Video
Graphics Array)는 다른 용어.
Police Quest 3 Larry 5
각 출력 색상별 이미지 비교
16Bit Color
R과 B는 5비트, G는 6비트(이는 일반적인 가시광선에서 녹색의 영역이 넓기 때문에)를 할당하여 만든 색공간을
16bit(하이 컬러라고도 함)라고 한다. 65,536의 색상이 표현 가능.(R5G6B5) RGBA의 경우 녹색의 1bit 영역을
Alpha로 사용한다.
24Bit Color
R 채널 : 256, B채널 : 256, G채널 : 256 색상. 총 16,777,216의 색상이 표현가능. 인간이 육안으로 인지하는 색상
은 대략 1000만여 색상이므로 거의 사람이 보는 색상은 모두 표현이 가능하다 해서 True Color 혹은 Full color
라고 부른다..
24bit = (R8G8B8)
32bit = (R8G8B8A8), 256단계 알파영역 포함
R.(255, 0, 0)
G.(0, 255, 0)
B.(0, 0, 255)
30Bit Color
채널당 8bit를 넘어가는 10비트 컬러뎁스(Color Depth)를 사용하는 경우에 사용되는 출력.(24비트의 약 6.4배
10억 7천3백만 컬러)
‘색재현율’보다 ‘색 깊이'가 보강된 출력으로 8비트에서 계조가 좀 더 정밀해지고 매끄러운 경우에 사용된
다.(10비트를 사용하려면 그래픽카드(쿼드로, FireGL), 모니터(10bit 출력가능), 케이블(hdmi 2.0, Dp 1.2) 모두 이
를 지원해야 한다)
Digital Texture Format
Texture Format?
이미지를 어떤 방식으로 저장하는지에 대한 규격.
보통 확장자( .XXX)로 구별하게 된다.
BMP (Microsoft Windows Device Independent Bitmap)
Microsoft에서 정의하고 있는 비트맵 그래픽 파일. 파일형식 중 가장 단순한 구조를 가지며, 1~24bit 컬러를 지원
하며 XP이후 8bit 알파를 포함한 32bit 포맷을 지원한다. 특히, 마이크로소프트 윈도, OS/2등 운영체제에 널리 쓰
였다.
압축을 하지 않기 때문에 용량 계산이 간편하다. (width) * (height) * (bits) /8/ (2^10n)
ex) 640x480 24bit texture : 640x480x24x8 = 921,600 byte / 1024 = 900KB
*물론 실제로는 오차가 존재한다.
압축을 하지 않는 텍스쳐 포맷이므로 여러 파일을 묶어 압축할 경우 용량이 큰 폭으로 줄어든다.
PCX (Personal Computer eXchange)
1985년, Z-soft가 제작한 이미지 저장용 비손실형 압축포맷. PC 페인트 브러쉬의 기본 압축 포맷. 1980~90년대
초반까지 많이 사용되다가 사용되지 않고 있음.
JPG, JPEG(Joint Photographic Experts Group – 합동사진 전문가 단체?
디지털 이미지 규격으로 널리 사용되는 포맷. 용량을 압축되는 방식으로 저장하는 손실압축 방식으로 저장
되며 최대 24비트 컬러까지 지원된다. 저장할수록 품질이 나빠지지만 다양한 색상과 명도를 가진 이미지의
용량을 줄이는데 높은 효율을 보여준다. jpg, jpeg, jpe등의 확장자를 사용한다.
BMP 984KB JPG 93KB
좌>>우로 갈수록 압축률이 낮아지는 대신 화질
은 좋아진다.(용량은 커짐)
Photoshop의 Jpeg 저장 옵션.
Quality를 여기서 결정한다.
JPEG보다 높은 압축률과 이미지 품질을 얻기 위해서 개발되었다. 비손실 압축을 지원하고 한 이미지에 여러
해상도의 이미지를 포함할 수 있으나… 현재 대부분의 웹 브라우저에서 지원되지 않아 잘 쓰이지 않는다.
JPG2000
GIF (Graphic Interchange Format)
256 color(를 저장하는 index color기반의 이미지 포맷. 다중 프레임 애니메이션을 지원하는 등 초기 웹 형식으로
많이 사용하였으나 낮은 품질 때문에 최근엔 짤방용으로 주로 쓰이고 있다. 잘 알려져 있지 않지만 비손실 압축형식
이다.
1999년 Unisys와의 , LZW 알고리즘(Lempel-Ziv-Welch)
특허분쟁으로 인해 대부분의 프로그램에서 GIF포맷을 지원
하지 않는 사태 발생 >> PNG 포맷의 대두.
현재까지 짧은 동영상 포맷으로 널리 사용되며 유지
256 색상으로 표현되는 포맷이지만, GIF의 index color는 16만 컬러중 256개를 골라서 사용하기 때문
에 색이 다양한 이미지는 색상갯수의 제한으로 품질이 나빠진다.
투명효과를 지원하지만 8bit 채널의 투명도를 지원하는 PNG에 비해 1bit 투명도만을 지원.
PNG (Portalble Network Graphics)
비손실 압축방식이며, 24bit 색상 + 8bit 알파채널을 지원하는 포맷(32bit). JPG처럼 이미지 손실이 발생하지 않으
며 GIF처럼 색상수를 줄이지 않으면서 압축하는 포맷
BMP 984KB PNG 596KB
색상과 명암의 구성이 단순할경우 압축률이 매우 좋음(GIF보다 좋을수도 있음)
BMP 984KB PNG 45KB
JPG 136KB GIF 26KB
TGA (Truevision Graphics Adapter)
TARGA(Truevision Advaced Raster Graphics Adapter)는 트루비전사의 타가보드를 위해 개발된 레스터 그래픽 파일 포맷.
1~32비트 컬러까지 자유롭게 저장이 가능.
특허로부터 방해가 거의 없고 도입하기 쉽고 단순하다는 장점이 있어 널리 이용되나, 색변화가 많은 텍스쳐의 경우 압축할 때 그
리 좋은 결과를 보이지 않는다..
32bit의 경우 24bit + 8bit 알파 채널을 지원.
Compress 항목 : 저장옵션의 하단에 compress(RLE : Run
Length Encording)라는 옵션이 있다. 이는 색 손실이 없는 TGA
의 이미지 압축을 위한 옵션으로 동일 컬러값을 가지는 항목에 대
해 하나의 데이터로 저장하는 옵션이다.( a, a 라는 동일 컬러값을
가지는 픽셀을 각각 저장하는 것이 아닌 a1, a2로 저장한다 생각하
면 쉽다).
색변화가 심한 texture의 경우 큰 효과를 보기 힘들다.
05-1 : 16 bit comprees No
05-2 : 16 bit comprees Yes
05-3 : 24 bit comprees No
05-4 : 24 bit comprees Yes
05-5 : 32 bit comprees No
05-6 : 32 bit comprees Yes
(32bit 영역의 경우 alpha 채널 데이터 포함된 결과임)
BPG (Better Portable Graphics)
동영상의 새로운 기술인 HEVC(High Efficiency Video Coding)에
서 파생된 것으로, H.264/MPEG-4 AVC 기술을 이어받은 새로운 이
미지 포맷으로
고 압축효율. 같은 품질의 경우 JPG보다 훨씬 작다(1/2이상)
작은 자바스크립트 디코더(54KB)로 대부분의 웹브라우저에서 지원
HEVC에 많은 특허가 관련되어있어 상용화 되려면 시간이 필요할듯
하나, 모바일 환경에서 매우 효율적일것으로 기대
JPEG 13.3KB BPG 13.2KB
그외 Google의 WebP(weppy)등 다양한 포맷들이 차세대 이미지 포맷으로 경쟁중
Unity Android platform에서
지원하는 texture format list
Unreal4에서 지원하는 texture format list
Texture Compression Option
압축 모드의 "bpp"라는 단위는 "bits per pixel"의 약자로, 1 픽셀의 색상을 표현하는데 필요한 비트 수를 나타냅니다. 4bpp이라는
것은 1 픽셀 당 4 비트의 색상 정보를 사용하고 있다는 것입니다. 참고로 24 비트 RGB 색상은 24bpp, 32 비트 ARGB 색상은
32bpp입니다.
EXR (OpenEXR)
ILM(Industrial Light and Magic)에 의해 개발된 HDRI(High Dynamic Range Image) 포맷. 2003년 무료로 릴리즈.
High Dynamic range와 색상 정밀도가 기존의 8bits 또는 10bits 파일 포맷보다 크다.
태양의 휘도(Luminance : 폭을 가지는 밝기의 양 – 사람의
눈이 인식하는 주관적 밝기)는 최대 100,000:1까지 차이
나게 되므로 이러한 빛 정보를 유사하게 담으려면 EXR 포
맷같은 HDR정보를 기록할 수 있는 텍스쳐 포맷이 필요하게
된다.
사진 촬영에 많이 쓰이는 RAW를 생각하면 이해가 쉽다.
Lightmap texture
HDRR의 최대의 장점은 재현된다는 씬의 밝은 부분과 어두
운 부분이 정확히 재현된다는 점이다.
HDR없이는 너무 어두운 부분은 휘도 값이 짤려서 흑색이
되며, 너무 밝은 부분은 값이 짤려서 백색이 된다.
ETC(Ericsson Texture Compression)
Android 단말에서 모든 기종에 공통으로 사용할 수 있는 압축 텍스쳐 포맷. 손실압축이며 알파채널을 지원하지 않는다.
1. 4x4 픽셀을 하나의 블록으로 처리하지만
그 블록을 다시 반으로 분할
2. 서브 볼록마다 대표 색상을 결정
3. 대표색상에서 보간 4색을 선택 >> 대체
대표색상 + 휘도 테이블
ETC에서의 압축 알고리즘의 고질적 문제
대표 색상을 선택하기 어려울경우 색상이 달
라진다.
ETC는 4x4 픽셀을 하나의 블록으로 처리하지만 처음에 그 1블록을 더
반으로 나눔. 수직과 수평으로 분할 할 수 있으므로, 어느 분할이 이루
어지는 가에 대한 정보는 Flip Bit로 1Bit에 저장.
출처 : Optix labs blog(www.webtech.co.jp)
출처 : Optix labs blog(www.webtech.co.jp)
ETC와 DXTC 각각의 싫어하는 블록의 특징
Alpha를 별도의 texture로 분리
텍스쳐가 한장 더 늘어나지만 ARGB 16bit로 압축되
는것보다 용량은 ½(ARGB 16bit는 ETC의 4배)
Texture Atlas를 shader에서 자동으로 조절되게 작성하고 텍스
쳐를 붙여서 제작.
o.Albedo = tex2D(_MainTex, float2(IN.uv_MainTex.x * 0.5,
IN.uv_MainTex.y))
o.Alpha = tex2D(_MainTex, float2((IN.uv_MainTex.x * 0.5)
+ 0.5, IN.uv_MainTex.y))
ETC2(Ericsson Texture Compression2)
ETC의 개량된 버전.
Texture 품질 개선. RGB 24bit와
육안으로 구별이 힘들 정도로 좋아짐
OpenGL ES 3.0 지원 디바이스부터
지원 가능.
현재로써는 줘도 못먹는 떡..(과감하게
미지원 기기는 서비스 대상에서 빼버
리고 개발하면 가능……)
중국에선 최신 디바이스도 지원안함.
그래도 ARGB16bit 출력을 사용해야 한다면?
32bit RGBA8888 오차확산을 사용한
16bit RGBA4444
(OPTPix imesta 7)
Unity에서 16bit로 변환 Unity에서 16bit로 변환
PVRTC(PowerVR Texture Compression)
손실 압축 3bit Alpha 지원
정사각형 2^ 텍스쳐만 지원
(1024x768같은 직사각형도 강제로
정사각형으로 변환)
알파유무에 따라 품질차이가 존재하
며 알파가 있을경우 품질이 떨어진다.
Imagination Technologies에서 개발된 PowerVR이 iphone용 GPU로 채택됨에 따라 IOS 플랫폼을 위해 주로 사용.(그외 PS
vita)
DXTC처럼 4X4 픽셀을 하
나의 블록으로 처리
대표2가지 색상을 결정
혼합방법 결정(Modulation Data 생성)
대표2가지 색상
보간한 후 Modulation Data에 따라 색상 혼합
PVRTC는 복원방법의 특징 : 이미지 복원시에 선택된 A,B 컬러를 사용해 블록의 색상을 조절하여 처리하게 된다.
대표 색 이외의 픽셀에는 보간하여 색상 적용
사진의 경우 DXT나 ETC만큼 괜
찮은 퀄리티로 압축.
인접한 블록의 경계의 색 변화를
매끄럽게 처리하기 때문에
DXTC에 비해 블록 노이즈가 잘
나타나지 않는다.
그러나 복원시 보간의 영향으로
하나의 블록 열화가 다른 블록에
영향을 미치거나 인접한 블록의
색상이 서로 영향을 주기 때문에
색이 퍼진것 처럼 보이는 문제
출처 : Optix labs blog(www.webtech.co.jp)
또한 알파가 포함된 이미지를 압축할 경우
사용할수 있는 색상의 수가 줄어들기 때문
에 이미지 열화가 두드러지게 나타난다.
출처 : Optix labs blog(www.webtech.co.jp)
Clear PVRTC
출처 : Optix labs blog(www.webtech.co.jp)
PVRTC2(PowerVR Texture Compression2)
ES 3.0 지원 기기가 많이 늘어난 상황. 머지않아 기본으로 사용될 것으로 전망됨.
ES 3.0 지원 기기
갤럭시 노트 3 시리즈 이후
갤럭시 S4 시리즈 이후
IOS 5s부터 지원 (IOS 7.0 이후)
DDS(DirectDraw Surface)
S3 Graphics의 Savage3D에 들어간 S3 텍스쳐 압축(S3TC)기술을 3dfx가 개발한 FXT1과의 경쟁때문에 엔비디아
에 라이선스해주면서 개발. 이후 DirectX 7.0부터 DXTn이 지원되면서 상호 호환포맷으로 자리 잡았다.
S3 S3TC voodoo2
Texture Size 24-bit 16-bit 8-bit FXT1 S3TC
2028 x 2048 12,289Kb 8,193Kb 4,098Kb 2,048Kb 2,097Kb
1024 x 1024 3,073Kb 2,049Kb 1,026Kb 512Kb 524Kb
512 x 512 769Kb 513Kb 258Kb 128Kb 131Kb
256 x 256 193Kb 129Kb 66Kb 32Kb 32Kb
128 x 128 49Kb 33Kb 18Kb 8Kb 8Kb
DXTn 장점.
1. DirectX에서 쓰는 텍스쳐와 같은 포맷을 사용함으로써 텍스쳐 생성후 파일에서 로딩한 데이터를 사용할때 압축해
제나 픽셀포맷 변환없이 바로 사용할 수 있다는 장점
2. 대부분의 비디오카드가 하드웨어 가속을 지원하므로 성능 저하가 없다.
3. 메모리를 적게 쓰는데 비해 퀄리티가 나쁘지 않다.
4. Mipmap및 Cubemap등을 미리 파일안에 생성해 놓을 수 있다.
* TGA, JPG, DDS는 파일 포맷이며 DXTn, A8R8G8B8등은 픽셀 포
맷을 가리키는 말이다. DDS = DXT라고 정확히는 같지 않지만 비슷하
게 보고 이해한다.
생성된 밉맵을 불러들여와 포토샵에서 띄웠을때 이와 같이 확인 할 수 있다.(1024 >> 512 >> 256 >> 128 >> 64 >> 32 >> 16)
- DXT1 no Alpha : R4G4B4. RGB는 4단계로 보간, 알파채널은 가지지 않는다. 가장 용량이 적
다.(1024x1024 기준 684kb)
- DXT1 1bit Alpha : A1R3G3B3. RGB는 3단계로 보간, 알파채널은 1bit. 1 bit를 알파 채널에 할당하
므로 크기는 변하지 않지만 이미지 품질은 떨어진다. 알파채널은 0,1의 두채널만을 가진다.
- DXT3 : A4R4G4B4. RGB는 4단계 보간, 알파는 4bit로 표현(1024x1024 기준 1.36MB)
4 bit이므로 16단계의 그레이 스케일로 알파영역이 표현.
- DXT5 Interpolated Alpha : A8R4G4B4. RGB는 4단계 보간, 알파는 8bit로 표현
8 bit이므로 256단계의 그레이 스케일로 알파영역이 표현된다. DXT3와 파일 크기는 동일.
BC(Block Compression)
이미지를 4X4 화소 단위의 블록으로 분할하여 각각의 블록마다 압축을 하는 방식. DX10부터 지원하는 규격
형식 이름 bpp 용도 비고
BC1 4 RGB 이미지 또는 RGBA 이미지 (0, 1 알파) DXT1의 대체
BC2 8 RGBA 이미지 (16 계조 알파) DXT2 ~ 3의 대안
BC3 8 RGBA 이미지 (256계조 알파) DXT4 ~ 5의 대체
BC4 4 1 성분 데이터 (하이트 맵 등) ATI1N 대체
BC5 8 2 성분 데이터 (노멀 맵 등) ATI2N (3Dc)의 대체
BC6H 8 HDR (하이 다이내믹 레인지)의 RGB 이미지
BC7 8 RGB 이미지 또는 RGBA 이미지 (256계조 알파)
압축 모드의 "bpp"라는 단위는 "bits per pixel"의 약자로, 1 픽셀의 색상을 표현하는데 필요한 비트 수를 나타냅니다. 4bpp이라는 것은 1 픽셀 당 4 비
트의 색상 정보를 사용하고 있다는 것입니다. 참고로 24 비트 RGB 색상은 24bpp, 32 비트 ARGB 색상은 32bpp입니다.
BC1 : DirectX 9에서 DXT1라고되어 압축 텍스처 형식과 동일한 것, RGB 색상 값과 1 비트 알파 (완전 투명 완전 불투명 만
두 값 알파)를 표현할 수있는 압축 텍스처 형식입니다.
4 × 4 픽셀의 이미지 데이터를 RGB565 형식의 대표 색상 2 가지 색상과 그 중간의 보간 색 (2 색 또는 1 색 + 투명)의 총 4
가지 색상 (또는 총 3 색 + 투명)으로 나타내는 비교 으로 간단한 압축 데이터입니다.
BC1은 4 × 4 픽셀에서 색조가 크게 변하지 않는 이미지에 뛰어난 색 재현성을 갖지만 4 × 4 픽셀에서 색조가 크게 바뀌는
부분이있는 이미지는 압축에 의한 열화가 블록 상에 노이즈가 보여 버리는 단점이 있습니다.
BC2 : DirectX 9에서는 DXT2와 DXT3라고되어 압축 텍스처 형식과 동일한 것, RGB 컬러 값과 4 비트 정밀도 (16톤)의 알
파를 표현할 수있는 압축 텍스처 형식입니다.
BC3 : DirectX 9에서는 DXT4와 DXT5라고되어 압축 텍스처 형식과 동일한 것, RGB 컬러 값과 8 비트 정밀도 (256톤)의 알
파를 표현할 수있는 압축 텍스처 형식입니다.
BC4 : DirectX 10에서 추가 된 압축 텍스처 형식, 휘도 데이터와 알파 채널과 하이트 맵 등 1 성분 (1 채널)의 정보 만 저장
1성분 데이터의 압축 포맷이기 때문에 보통의 RGB 컬러 이미지를 저장하는 데 사용하지 않음.
BC4 압축 데이터는 DirectX 9 시대에 ATI1N (또는 ATI1)라고되어 압축 텍스처 형식과 기본적으로 동일.
BC4에는 표현할 수있는 값의 범위가 0.0 ~ 1.0의 BC4U (BC4_UNORM)는 텍스처 형식과 표현 가능한 값의 범위가 -1.0 ~
1.0의 BC4S (BC4_SNORM)는 텍스처 형식의 2 종류가 존재.
BC3와 다른부분은 0~255의 8비트 값이 아니라 0.0~1.0(BC4U), 또는 -1.-0 ~ 1.0(BC4S)의 범위의 값을 나타내는 텍스쳐
형식으로 보간계산이 8비트에 비해 조금 높은 정밀도로 이루어진다.
BC5 : DirectX 10에서 추가 된 압축 텍스처 형식으로 노멀 맵 (Normal Map) 등과 같은 2 성분 (2 채널)의 정보를 저장.
2 성분 데이터의 압축 텍스처 형식이기 때문에 보통의 RGB 컬러 이미지를 저장하는 데 사용하지 않음.
BC5 압축 데이터 구조는 DirectX 9 시대에 ATI2N (또는 ATI2)와 3Dc 또는 DXN이라고되어 압축 텍스처 형식과 기본적으
로 동일.
BC5에서 표현할 수있는 값의 정확도는 BC4와 마찬가지로 그다지 높지 않으므로 1 성분 당 8 비트 정도의 정밀도로 충분한
용도로 밖에 사용할 수 없음.
노멀 맵은 본래는 x, y, z 3 성분이 필요하지만, 정규화 된 벡터는 두 성분의 값을 알면 나머지 1 성분을 계산할 수 있기 때문에
(오차가 큼) 2성분만 저장하는 방식.
BC6H : DirectX 11에 추가 된 압축 텍스처 형식으로 HDR 이미지 데이터를 저장하기 위한 것
BC6H는 4 × 4 픽셀마다 128비트의 압축 데이터를 사용하며 아래와 같이 모드 비트, 인덱스 값 파티션, 엔드 포인트 정보가
다른 모드 별로 다른 형식으로 저장된다.
HDR을 사용하는 경우 다른 HDR 이미지 포맷에 비해 높은 압축률을 보여주므로 효과적임.
BC7 : DirectX 11에 추가 된 압축 텍스처 형식으로 BC1 ~ BC3보다 높은 품질의 이미지 데이터를 저장 하기 위한 것.
BC7에는 RGB 값이 선형(Linear)인 BC7_UNORM 및 RGB 값이 sRGB(Gamma)인 BC7_UNORM_SRGB의 2 개의 텍스처
형식이 준비되어 있음니다. 이 형식의 차이는 RGB 값의 색 공간(color space)의 식별을 위한것이며, 압축 알고리즘 자체는
동일.
BC7은 종래의 DX2~DX5를 사용하는 텍스쳐의 대체로 가장 좋은 형식이라고 하지만 여러가지 문제로 인해 늦어지는 중.(점
차로 개선중이라고 함)
Technical Artist
Yi SangYun
Game 3D Environment Artist Group
https://www.facebook.com/groups/3Dbackground/
illustor@gmail.com

More Related Content

What's hot

IndirectDraw with unity
IndirectDraw with unityIndirectDraw with unity
IndirectDraw with unityJung Suk Ko
 
나만의 엔진 개발하기
나만의 엔진 개발하기나만의 엔진 개발하기
나만의 엔진 개발하기YEONG-CHEON YOU
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더동석 김
 
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기Madumpa Park
 
Ndc2012 최지호 텍스쳐 압축 기법 소개
Ndc2012 최지호 텍스쳐 압축 기법 소개Ndc2012 최지호 텍스쳐 압축 기법 소개
Ndc2012 최지호 텍스쳐 압축 기법 소개Jiho Choi
 
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기강 민우
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?SangYun Yi
 
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)포프 김
 
[0903 구경원] recast 네비메쉬
[0903 구경원] recast 네비메쉬[0903 구경원] recast 네비메쉬
[0903 구경원] recast 네비메쉬KyeongWon Koo
 
Z Buffer Optimizations
Z Buffer OptimizationsZ Buffer Optimizations
Z Buffer Optimizationspjcozzi
 
노말 맵핑(Normal mapping)
노말 맵핑(Normal mapping)노말 맵핑(Normal mapping)
노말 맵핑(Normal mapping)QooJuice
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)Bongseok Cho
 
5강 알파와알파소팅
5강 알파와알파소팅5강 알파와알파소팅
5강 알파와알파소팅JP Jung
 
PBR 기초 이론과 사용되는 맵들 Vol.3
PBR 기초 이론과 사용되는 맵들 Vol.3PBR 기초 이론과 사용되는 맵들 Vol.3
PBR 기초 이론과 사용되는 맵들 Vol.3Jooyoung Yi
 

What's hot (20)

IndirectDraw with unity
IndirectDraw with unityIndirectDraw with unity
IndirectDraw with unity
 
나만의 엔진 개발하기
나만의 엔진 개발하기나만의 엔진 개발하기
나만의 엔진 개발하기
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더
 
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
 
Ndc2012 최지호 텍스쳐 압축 기법 소개
Ndc2012 최지호 텍스쳐 압축 기법 소개Ndc2012 최지호 텍스쳐 압축 기법 소개
Ndc2012 최지호 텍스쳐 압축 기법 소개
 
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
 
Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?Igc2016 Technical Artist가 뭐하는 사람이에요?
Igc2016 Technical Artist가 뭐하는 사람이에요?
 
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
 
[0903 구경원] recast 네비메쉬
[0903 구경원] recast 네비메쉬[0903 구경원] recast 네비메쉬
[0903 구경원] recast 네비메쉬
 
카툰 렌더링
카툰 렌더링카툰 렌더링
카툰 렌더링
 
Z Buffer Optimizations
Z Buffer OptimizationsZ Buffer Optimizations
Z Buffer Optimizations
 
High dynamic range
High dynamic rangeHigh dynamic range
High dynamic range
 
D2 Hdr
D2 HdrD2 Hdr
D2 Hdr
 
노말 맵핑(Normal mapping)
노말 맵핑(Normal mapping)노말 맵핑(Normal mapping)
노말 맵핑(Normal mapping)
 
Motion blur
Motion blurMotion blur
Motion blur
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
 
5강 알파와알파소팅
5강 알파와알파소팅5강 알파와알파소팅
5강 알파와알파소팅
 
DirectX 11 Rendering in Battlefield 3
DirectX 11 Rendering in Battlefield 3DirectX 11 Rendering in Battlefield 3
DirectX 11 Rendering in Battlefield 3
 
PBR 기초 이론과 사용되는 맵들 Vol.3
PBR 기초 이론과 사용되는 맵들 Vol.3PBR 기초 이론과 사용되는 맵들 Vol.3
PBR 기초 이론과 사용되는 맵들 Vol.3
 

Viewers also liked

유니티 게임 그래픽스 아트 개발 사례 분석
유니티 게임 그래픽스 아트 개발 사례 분석유니티 게임 그래픽스 아트 개발 사례 분석
유니티 게임 그래픽스 아트 개발 사례 분석SangYun Yi
 
Rooms2 vr ArtWorks
Rooms2 vr ArtWorksRooms2 vr ArtWorks
Rooms2 vr ArtWorksSangYun Yi
 
Unite2015 probelight(150417)
Unite2015 probelight(150417)Unite2015 probelight(150417)
Unite2015 probelight(150417)SangYun Yi
 
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례SangYun Yi
 
Kgc2013 defense technica_converting_이상윤
Kgc2013 defense technica_converting_이상윤Kgc2013 defense technica_converting_이상윤
Kgc2013 defense technica_converting_이상윤SangYun Yi
 
Devtree lightmapping unity5_2_1stday
Devtree lightmapping unity5_2_1stdayDevtree lightmapping unity5_2_1stday
Devtree lightmapping unity5_2_1stdaySangYun Yi
 
레퍼런스만 알면 언리얼 엔진이 제대로 보인다
레퍼런스만 알면 언리얼 엔진이 제대로 보인다레퍼런스만 알면 언리얼 엔진이 제대로 보인다
레퍼런스만 알면 언리얼 엔진이 제대로 보인다Lee Dustin
 
Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03SangYun Yi
 
Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04SangYun Yi
 
Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02SangYun Yi
 
Game Visual Art Technologies
Game Visual Art TechnologiesGame Visual Art Technologies
Game Visual Art TechnologiesSangYun Yi
 
GameMath-Chapter 08 고급렌더링
GameMath-Chapter 08 고급렌더링GameMath-Chapter 08 고급렌더링
GameMath-Chapter 08 고급렌더링Mark Choi
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01SangYun Yi
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012devCAT Studio, NEXON
 
LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해SangYun Yi
 
【Unite 2017 Tokyo】Unityライティング最新情報
【Unite 2017 Tokyo】Unityライティング最新情報【Unite 2017 Tokyo】Unityライティング最新情報
【Unite 2017 Tokyo】Unityライティング最新情報Unite2017Tokyo
 
Unite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYunUnite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYunSangYun Yi
 
Unite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VRUnite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VRSangYun Yi
 

Viewers also liked (20)

유니티 게임 그래픽스 아트 개발 사례 분석
유니티 게임 그래픽스 아트 개발 사례 분석유니티 게임 그래픽스 아트 개발 사례 분석
유니티 게임 그래픽스 아트 개발 사례 분석
 
Rooms2 vr ArtWorks
Rooms2 vr ArtWorksRooms2 vr ArtWorks
Rooms2 vr ArtWorks
 
Unite2015 probelight(150417)
Unite2015 probelight(150417)Unite2015 probelight(150417)
Unite2015 probelight(150417)
 
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
Unity3D 엔진을 활용한 게임환경 분석 및 3D 그래픽스 기술 /제작 사례
 
Devtree illu
Devtree illuDevtree illu
Devtree illu
 
Kgc2013 defense technica_converting_이상윤
Kgc2013 defense technica_converting_이상윤Kgc2013 defense technica_converting_이상윤
Kgc2013 defense technica_converting_이상윤
 
Gametech2015
Gametech2015Gametech2015
Gametech2015
 
Devtree lightmapping unity5_2_1stday
Devtree lightmapping unity5_2_1stdayDevtree lightmapping unity5_2_1stday
Devtree lightmapping unity5_2_1stday
 
레퍼런스만 알면 언리얼 엔진이 제대로 보인다
레퍼런스만 알면 언리얼 엔진이 제대로 보인다레퍼런스만 알면 언리얼 엔진이 제대로 보인다
레퍼런스만 알면 언리얼 엔진이 제대로 보인다
 
Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03Unity Surface Shader for Artist 03
Unity Surface Shader for Artist 03
 
Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04Unity Surface Shader for Artist 04
Unity Surface Shader for Artist 04
 
Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02Unity Surface Shader for Artist 02
Unity Surface Shader for Artist 02
 
Game Visual Art Technologies
Game Visual Art TechnologiesGame Visual Art Technologies
Game Visual Art Technologies
 
GameMath-Chapter 08 고급렌더링
GameMath-Chapter 08 고급렌더링GameMath-Chapter 08 고급렌더링
GameMath-Chapter 08 고급렌더링
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01
 
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
전형규, 가성비 좋은 렌더링 테크닉 10선, NDC2012
 
LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해LCD Monitor 선택 가이드와 Gamma의 이해
LCD Monitor 선택 가이드와 Gamma의 이해
 
【Unite 2017 Tokyo】Unityライティング最新情報
【Unite 2017 Tokyo】Unityライティング最新情報【Unite 2017 Tokyo】Unityライティング最新情報
【Unite 2017 Tokyo】Unityライティング最新情報
 
Unite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYunUnite Seoul 2017 Yi SangYun
Unite Seoul 2017 Yi SangYun
 
Unite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VRUnite seoul 2016 Rooms2 mobile to VR
Unite seoul 2016 Rooms2 mobile to VR
 

Similar to Display color와 Digital texture format의 이해

2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초JP Jung
 
2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정JP Jung
 
gv005_1 ver0.1
gv005_1 ver0.1gv005_1 ver0.1
gv005_1 ver0.1Glenn Chae
 
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)대영 노
 
Ch4 1 digital_image
Ch4 1 digital_imageCh4 1 digital_image
Ch4 1 digital_imageDonghoi Kim
 
디지털비디오
디지털비디오디지털비디오
디지털비디오Donghoi Kim
 
NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트재철 황
 
[데브루키] Color space gamma correction
[데브루키] Color space gamma correction[데브루키] Color space gamma correction
[데브루키] Color space gamma correctionMinGeun Park
 
내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오KwangSam Kim
 
Landscape 구축, Unreal Engine 3 의 차세대 terrain system
Landscape 구축, Unreal Engine 3 의 차세대 terrain systemLandscape 구축, Unreal Engine 3 의 차세대 terrain system
Landscape 구축, Unreal Engine 3 의 차세대 terrain systemdrandom
 
UHD HDR "Dance untold story"
UHD HDR "Dance untold story"UHD HDR "Dance untold story"
UHD HDR "Dance untold story"승윤 이
 
Gamma라고 들어봤니
Gamma라고 들어봤니Gamma라고 들어봤니
Gamma라고 들어봤니minwoo lee
 
Gamma and linear color-space
Gamma and linear color-spaceGamma and linear color-space
Gamma and linear color-space민웅 이
 
비디오 코덱
비디오 코덱비디오 코덱
비디오 코덱greenday96
 
111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_web111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_webCARROTCG
 
언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정Dae Hyek KIM
 

Similar to Display color와 Digital texture format의 이해 (20)

2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초
 
2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정
 
gv005_1 ver0.1
gv005_1 ver0.1gv005_1 ver0.1
gv005_1 ver0.1
 
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
 
Color Control
Color ControlColor Control
Color Control
 
Ch4 1 digital_image
Ch4 1 digital_imageCh4 1 digital_image
Ch4 1 digital_image
 
디지털비디오
디지털비디오디지털비디오
디지털비디오
 
NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트
 
[데브루키] Color space gamma correction
[데브루키] Color space gamma correction[데브루키] Color space gamma correction
[데브루키] Color space gamma correction
 
내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오
 
Landscape 구축, Unreal Engine 3 의 차세대 terrain system
Landscape 구축, Unreal Engine 3 의 차세대 terrain systemLandscape 구축, Unreal Engine 3 의 차세대 terrain system
Landscape 구축, Unreal Engine 3 의 차세대 terrain system
 
UHD HDR "Dance untold story"
UHD HDR "Dance untold story"UHD HDR "Dance untold story"
UHD HDR "Dance untold story"
 
Gamma라고 들어봤니
Gamma라고 들어봤니Gamma라고 들어봤니
Gamma라고 들어봤니
 
Uncharted4 part1
Uncharted4 part1Uncharted4 part1
Uncharted4 part1
 
Gamma and linear color-space
Gamma and linear color-spaceGamma and linear color-space
Gamma and linear color-space
 
비디오 코덱
비디오 코덱비디오 코덱
비디오 코덱
 
111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_web111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_web
 
언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정
 
Code 25장
Code 25장Code 25장
Code 25장
 
Android camera basics
Android camera basicsAndroid camera basics
Android camera basics
 

Display color와 Digital texture format의 이해

  • 3. 가산혼합과 감산혼합 가산혼합 : 빛의 색상. 섞을수록 흰색에 가깝게 된다 R.G.B 감산혼합 : 물감, 안료등 실제의 색상의 혼합. 섞을수록 검정색에 가깝게 된다 C.M.Y.K
  • 4. 색재현율에 따른 색영역 비교 (NTSC : National Television System committee. 국가 텔레비전 시스템 위 원회) 색영역별 비교 SWOP CMYK : us.web coated
  • 5. Gamut Warning(색 영역 경고) 인쇄 가능 색영역 확인 View >> Gamut Warning
  • 6. Gamut Warning 확인 후 보정하여 출력하거나 CMYK 모드로 작업하여 출력.
  • 7.
  • 9. 1Bit Color 0, 1로만 표시되는 display. 소형 액정, 가전에 많이 사용.(지금도 많이 사용된다)
  • 10. 2Bit Color IBM의 CGA(Color Graphic Adaptor)00, 01, 10, 11 4color 표현
  • 11. 4Bit Color 16색을 사용. EGA(Enhanced Graphics Adapter) 640x350 해상도 지원. 국내에선 허큘리스에서 VGA로 전환되었기에 많이 보이지 않았지만 해외에선 꽤 오랜기간 사용 삼국지 1편 울펜스타인3D
  • 12. 8Bit Color 256색 color. 그래픽 카드를 이야기 하는 VGA(Video Graphics Adapter)와 VGA(Video Graphics Array)는 다른 용어. Police Quest 3 Larry 5
  • 13. 각 출력 색상별 이미지 비교
  • 14. 16Bit Color R과 B는 5비트, G는 6비트(이는 일반적인 가시광선에서 녹색의 영역이 넓기 때문에)를 할당하여 만든 색공간을 16bit(하이 컬러라고도 함)라고 한다. 65,536의 색상이 표현 가능.(R5G6B5) RGBA의 경우 녹색의 1bit 영역을 Alpha로 사용한다.
  • 15. 24Bit Color R 채널 : 256, B채널 : 256, G채널 : 256 색상. 총 16,777,216의 색상이 표현가능. 인간이 육안으로 인지하는 색상 은 대략 1000만여 색상이므로 거의 사람이 보는 색상은 모두 표현이 가능하다 해서 True Color 혹은 Full color 라고 부른다.. 24bit = (R8G8B8) 32bit = (R8G8B8A8), 256단계 알파영역 포함 R.(255, 0, 0) G.(0, 255, 0) B.(0, 0, 255)
  • 16. 30Bit Color 채널당 8bit를 넘어가는 10비트 컬러뎁스(Color Depth)를 사용하는 경우에 사용되는 출력.(24비트의 약 6.4배 10억 7천3백만 컬러) ‘색재현율’보다 ‘색 깊이'가 보강된 출력으로 8비트에서 계조가 좀 더 정밀해지고 매끄러운 경우에 사용된 다.(10비트를 사용하려면 그래픽카드(쿼드로, FireGL), 모니터(10bit 출력가능), 케이블(hdmi 2.0, Dp 1.2) 모두 이 를 지원해야 한다)
  • 17.
  • 19. Texture Format? 이미지를 어떤 방식으로 저장하는지에 대한 규격. 보통 확장자( .XXX)로 구별하게 된다.
  • 20. BMP (Microsoft Windows Device Independent Bitmap) Microsoft에서 정의하고 있는 비트맵 그래픽 파일. 파일형식 중 가장 단순한 구조를 가지며, 1~24bit 컬러를 지원 하며 XP이후 8bit 알파를 포함한 32bit 포맷을 지원한다. 특히, 마이크로소프트 윈도, OS/2등 운영체제에 널리 쓰 였다. 압축을 하지 않기 때문에 용량 계산이 간편하다. (width) * (height) * (bits) /8/ (2^10n) ex) 640x480 24bit texture : 640x480x24x8 = 921,600 byte / 1024 = 900KB *물론 실제로는 오차가 존재한다. 압축을 하지 않는 텍스쳐 포맷이므로 여러 파일을 묶어 압축할 경우 용량이 큰 폭으로 줄어든다.
  • 21. PCX (Personal Computer eXchange) 1985년, Z-soft가 제작한 이미지 저장용 비손실형 압축포맷. PC 페인트 브러쉬의 기본 압축 포맷. 1980~90년대 초반까지 많이 사용되다가 사용되지 않고 있음.
  • 22. JPG, JPEG(Joint Photographic Experts Group – 합동사진 전문가 단체? 디지털 이미지 규격으로 널리 사용되는 포맷. 용량을 압축되는 방식으로 저장하는 손실압축 방식으로 저장 되며 최대 24비트 컬러까지 지원된다. 저장할수록 품질이 나빠지지만 다양한 색상과 명도를 가진 이미지의 용량을 줄이는데 높은 효율을 보여준다. jpg, jpeg, jpe등의 확장자를 사용한다. BMP 984KB JPG 93KB
  • 23. 좌>>우로 갈수록 압축률이 낮아지는 대신 화질 은 좋아진다.(용량은 커짐) Photoshop의 Jpeg 저장 옵션. Quality를 여기서 결정한다.
  • 24. JPEG보다 높은 압축률과 이미지 품질을 얻기 위해서 개발되었다. 비손실 압축을 지원하고 한 이미지에 여러 해상도의 이미지를 포함할 수 있으나… 현재 대부분의 웹 브라우저에서 지원되지 않아 잘 쓰이지 않는다. JPG2000
  • 25. GIF (Graphic Interchange Format) 256 color(를 저장하는 index color기반의 이미지 포맷. 다중 프레임 애니메이션을 지원하는 등 초기 웹 형식으로 많이 사용하였으나 낮은 품질 때문에 최근엔 짤방용으로 주로 쓰이고 있다. 잘 알려져 있지 않지만 비손실 압축형식 이다. 1999년 Unisys와의 , LZW 알고리즘(Lempel-Ziv-Welch) 특허분쟁으로 인해 대부분의 프로그램에서 GIF포맷을 지원 하지 않는 사태 발생 >> PNG 포맷의 대두. 현재까지 짧은 동영상 포맷으로 널리 사용되며 유지
  • 26. 256 색상으로 표현되는 포맷이지만, GIF의 index color는 16만 컬러중 256개를 골라서 사용하기 때문 에 색이 다양한 이미지는 색상갯수의 제한으로 품질이 나빠진다. 투명효과를 지원하지만 8bit 채널의 투명도를 지원하는 PNG에 비해 1bit 투명도만을 지원.
  • 27.
  • 28. PNG (Portalble Network Graphics) 비손실 압축방식이며, 24bit 색상 + 8bit 알파채널을 지원하는 포맷(32bit). JPG처럼 이미지 손실이 발생하지 않으 며 GIF처럼 색상수를 줄이지 않으면서 압축하는 포맷 BMP 984KB PNG 596KB
  • 29. 색상과 명암의 구성이 단순할경우 압축률이 매우 좋음(GIF보다 좋을수도 있음) BMP 984KB PNG 45KB JPG 136KB GIF 26KB
  • 30. TGA (Truevision Graphics Adapter) TARGA(Truevision Advaced Raster Graphics Adapter)는 트루비전사의 타가보드를 위해 개발된 레스터 그래픽 파일 포맷. 1~32비트 컬러까지 자유롭게 저장이 가능. 특허로부터 방해가 거의 없고 도입하기 쉽고 단순하다는 장점이 있어 널리 이용되나, 색변화가 많은 텍스쳐의 경우 압축할 때 그 리 좋은 결과를 보이지 않는다.. 32bit의 경우 24bit + 8bit 알파 채널을 지원.
  • 31. Compress 항목 : 저장옵션의 하단에 compress(RLE : Run Length Encording)라는 옵션이 있다. 이는 색 손실이 없는 TGA 의 이미지 압축을 위한 옵션으로 동일 컬러값을 가지는 항목에 대 해 하나의 데이터로 저장하는 옵션이다.( a, a 라는 동일 컬러값을 가지는 픽셀을 각각 저장하는 것이 아닌 a1, a2로 저장한다 생각하 면 쉽다). 색변화가 심한 texture의 경우 큰 효과를 보기 힘들다. 05-1 : 16 bit comprees No 05-2 : 16 bit comprees Yes 05-3 : 24 bit comprees No 05-4 : 24 bit comprees Yes 05-5 : 32 bit comprees No 05-6 : 32 bit comprees Yes (32bit 영역의 경우 alpha 채널 데이터 포함된 결과임)
  • 32. BPG (Better Portable Graphics) 동영상의 새로운 기술인 HEVC(High Efficiency Video Coding)에 서 파생된 것으로, H.264/MPEG-4 AVC 기술을 이어받은 새로운 이 미지 포맷으로 고 압축효율. 같은 품질의 경우 JPG보다 훨씬 작다(1/2이상) 작은 자바스크립트 디코더(54KB)로 대부분의 웹브라우저에서 지원 HEVC에 많은 특허가 관련되어있어 상용화 되려면 시간이 필요할듯 하나, 모바일 환경에서 매우 효율적일것으로 기대
  • 33. JPEG 13.3KB BPG 13.2KB 그외 Google의 WebP(weppy)등 다양한 포맷들이 차세대 이미지 포맷으로 경쟁중
  • 34. Unity Android platform에서 지원하는 texture format list Unreal4에서 지원하는 texture format list Texture Compression Option 압축 모드의 "bpp"라는 단위는 "bits per pixel"의 약자로, 1 픽셀의 색상을 표현하는데 필요한 비트 수를 나타냅니다. 4bpp이라는 것은 1 픽셀 당 4 비트의 색상 정보를 사용하고 있다는 것입니다. 참고로 24 비트 RGB 색상은 24bpp, 32 비트 ARGB 색상은 32bpp입니다.
  • 35. EXR (OpenEXR) ILM(Industrial Light and Magic)에 의해 개발된 HDRI(High Dynamic Range Image) 포맷. 2003년 무료로 릴리즈. High Dynamic range와 색상 정밀도가 기존의 8bits 또는 10bits 파일 포맷보다 크다. 태양의 휘도(Luminance : 폭을 가지는 밝기의 양 – 사람의 눈이 인식하는 주관적 밝기)는 최대 100,000:1까지 차이 나게 되므로 이러한 빛 정보를 유사하게 담으려면 EXR 포 맷같은 HDR정보를 기록할 수 있는 텍스쳐 포맷이 필요하게 된다. 사진 촬영에 많이 쓰이는 RAW를 생각하면 이해가 쉽다.
  • 36. Lightmap texture HDRR의 최대의 장점은 재현된다는 씬의 밝은 부분과 어두 운 부분이 정확히 재현된다는 점이다. HDR없이는 너무 어두운 부분은 휘도 값이 짤려서 흑색이 되며, 너무 밝은 부분은 값이 짤려서 백색이 된다.
  • 37. ETC(Ericsson Texture Compression) Android 단말에서 모든 기종에 공통으로 사용할 수 있는 압축 텍스쳐 포맷. 손실압축이며 알파채널을 지원하지 않는다. 1. 4x4 픽셀을 하나의 블록으로 처리하지만 그 블록을 다시 반으로 분할 2. 서브 볼록마다 대표 색상을 결정 3. 대표색상에서 보간 4색을 선택 >> 대체 대표색상 + 휘도 테이블
  • 38. ETC에서의 압축 알고리즘의 고질적 문제 대표 색상을 선택하기 어려울경우 색상이 달 라진다. ETC는 4x4 픽셀을 하나의 블록으로 처리하지만 처음에 그 1블록을 더 반으로 나눔. 수직과 수평으로 분할 할 수 있으므로, 어느 분할이 이루 어지는 가에 대한 정보는 Flip Bit로 1Bit에 저장. 출처 : Optix labs blog(www.webtech.co.jp)
  • 39. 출처 : Optix labs blog(www.webtech.co.jp) ETC와 DXTC 각각의 싫어하는 블록의 특징
  • 40. Alpha를 별도의 texture로 분리 텍스쳐가 한장 더 늘어나지만 ARGB 16bit로 압축되 는것보다 용량은 ½(ARGB 16bit는 ETC의 4배) Texture Atlas를 shader에서 자동으로 조절되게 작성하고 텍스 쳐를 붙여서 제작. o.Albedo = tex2D(_MainTex, float2(IN.uv_MainTex.x * 0.5, IN.uv_MainTex.y)) o.Alpha = tex2D(_MainTex, float2((IN.uv_MainTex.x * 0.5) + 0.5, IN.uv_MainTex.y))
  • 41. ETC2(Ericsson Texture Compression2) ETC의 개량된 버전. Texture 품질 개선. RGB 24bit와 육안으로 구별이 힘들 정도로 좋아짐 OpenGL ES 3.0 지원 디바이스부터 지원 가능. 현재로써는 줘도 못먹는 떡..(과감하게 미지원 기기는 서비스 대상에서 빼버 리고 개발하면 가능……) 중국에선 최신 디바이스도 지원안함.
  • 42. 그래도 ARGB16bit 출력을 사용해야 한다면? 32bit RGBA8888 오차확산을 사용한 16bit RGBA4444 (OPTPix imesta 7) Unity에서 16bit로 변환 Unity에서 16bit로 변환
  • 43. PVRTC(PowerVR Texture Compression) 손실 압축 3bit Alpha 지원 정사각형 2^ 텍스쳐만 지원 (1024x768같은 직사각형도 강제로 정사각형으로 변환) 알파유무에 따라 품질차이가 존재하 며 알파가 있을경우 품질이 떨어진다. Imagination Technologies에서 개발된 PowerVR이 iphone용 GPU로 채택됨에 따라 IOS 플랫폼을 위해 주로 사용.(그외 PS vita)
  • 44. DXTC처럼 4X4 픽셀을 하 나의 블록으로 처리 대표2가지 색상을 결정 혼합방법 결정(Modulation Data 생성)
  • 45. 대표2가지 색상 보간한 후 Modulation Data에 따라 색상 혼합 PVRTC는 복원방법의 특징 : 이미지 복원시에 선택된 A,B 컬러를 사용해 블록의 색상을 조절하여 처리하게 된다. 대표 색 이외의 픽셀에는 보간하여 색상 적용
  • 46. 사진의 경우 DXT나 ETC만큼 괜 찮은 퀄리티로 압축. 인접한 블록의 경계의 색 변화를 매끄럽게 처리하기 때문에 DXTC에 비해 블록 노이즈가 잘 나타나지 않는다. 그러나 복원시 보간의 영향으로 하나의 블록 열화가 다른 블록에 영향을 미치거나 인접한 블록의 색상이 서로 영향을 주기 때문에 색이 퍼진것 처럼 보이는 문제 출처 : Optix labs blog(www.webtech.co.jp)
  • 47. 또한 알파가 포함된 이미지를 압축할 경우 사용할수 있는 색상의 수가 줄어들기 때문 에 이미지 열화가 두드러지게 나타난다. 출처 : Optix labs blog(www.webtech.co.jp)
  • 48. Clear PVRTC 출처 : Optix labs blog(www.webtech.co.jp)
  • 50.
  • 51. ES 3.0 지원 기기가 많이 늘어난 상황. 머지않아 기본으로 사용될 것으로 전망됨. ES 3.0 지원 기기 갤럭시 노트 3 시리즈 이후 갤럭시 S4 시리즈 이후 IOS 5s부터 지원 (IOS 7.0 이후)
  • 52. DDS(DirectDraw Surface) S3 Graphics의 Savage3D에 들어간 S3 텍스쳐 압축(S3TC)기술을 3dfx가 개발한 FXT1과의 경쟁때문에 엔비디아 에 라이선스해주면서 개발. 이후 DirectX 7.0부터 DXTn이 지원되면서 상호 호환포맷으로 자리 잡았다. S3 S3TC voodoo2 Texture Size 24-bit 16-bit 8-bit FXT1 S3TC 2028 x 2048 12,289Kb 8,193Kb 4,098Kb 2,048Kb 2,097Kb 1024 x 1024 3,073Kb 2,049Kb 1,026Kb 512Kb 524Kb 512 x 512 769Kb 513Kb 258Kb 128Kb 131Kb 256 x 256 193Kb 129Kb 66Kb 32Kb 32Kb 128 x 128 49Kb 33Kb 18Kb 8Kb 8Kb
  • 53. DXTn 장점. 1. DirectX에서 쓰는 텍스쳐와 같은 포맷을 사용함으로써 텍스쳐 생성후 파일에서 로딩한 데이터를 사용할때 압축해 제나 픽셀포맷 변환없이 바로 사용할 수 있다는 장점 2. 대부분의 비디오카드가 하드웨어 가속을 지원하므로 성능 저하가 없다. 3. 메모리를 적게 쓰는데 비해 퀄리티가 나쁘지 않다. 4. Mipmap및 Cubemap등을 미리 파일안에 생성해 놓을 수 있다. * TGA, JPG, DDS는 파일 포맷이며 DXTn, A8R8G8B8등은 픽셀 포 맷을 가리키는 말이다. DDS = DXT라고 정확히는 같지 않지만 비슷하 게 보고 이해한다.
  • 54. 생성된 밉맵을 불러들여와 포토샵에서 띄웠을때 이와 같이 확인 할 수 있다.(1024 >> 512 >> 256 >> 128 >> 64 >> 32 >> 16)
  • 55. - DXT1 no Alpha : R4G4B4. RGB는 4단계로 보간, 알파채널은 가지지 않는다. 가장 용량이 적 다.(1024x1024 기준 684kb) - DXT1 1bit Alpha : A1R3G3B3. RGB는 3단계로 보간, 알파채널은 1bit. 1 bit를 알파 채널에 할당하 므로 크기는 변하지 않지만 이미지 품질은 떨어진다. 알파채널은 0,1의 두채널만을 가진다. - DXT3 : A4R4G4B4. RGB는 4단계 보간, 알파는 4bit로 표현(1024x1024 기준 1.36MB) 4 bit이므로 16단계의 그레이 스케일로 알파영역이 표현. - DXT5 Interpolated Alpha : A8R4G4B4. RGB는 4단계 보간, 알파는 8bit로 표현 8 bit이므로 256단계의 그레이 스케일로 알파영역이 표현된다. DXT3와 파일 크기는 동일.
  • 56. BC(Block Compression) 이미지를 4X4 화소 단위의 블록으로 분할하여 각각의 블록마다 압축을 하는 방식. DX10부터 지원하는 규격 형식 이름 bpp 용도 비고 BC1 4 RGB 이미지 또는 RGBA 이미지 (0, 1 알파) DXT1의 대체 BC2 8 RGBA 이미지 (16 계조 알파) DXT2 ~ 3의 대안 BC3 8 RGBA 이미지 (256계조 알파) DXT4 ~ 5의 대체 BC4 4 1 성분 데이터 (하이트 맵 등) ATI1N 대체 BC5 8 2 성분 데이터 (노멀 맵 등) ATI2N (3Dc)의 대체 BC6H 8 HDR (하이 다이내믹 레인지)의 RGB 이미지 BC7 8 RGB 이미지 또는 RGBA 이미지 (256계조 알파) 압축 모드의 "bpp"라는 단위는 "bits per pixel"의 약자로, 1 픽셀의 색상을 표현하는데 필요한 비트 수를 나타냅니다. 4bpp이라는 것은 1 픽셀 당 4 비 트의 색상 정보를 사용하고 있다는 것입니다. 참고로 24 비트 RGB 색상은 24bpp, 32 비트 ARGB 색상은 32bpp입니다.
  • 57. BC1 : DirectX 9에서 DXT1라고되어 압축 텍스처 형식과 동일한 것, RGB 색상 값과 1 비트 알파 (완전 투명 완전 불투명 만 두 값 알파)를 표현할 수있는 압축 텍스처 형식입니다. 4 × 4 픽셀의 이미지 데이터를 RGB565 형식의 대표 색상 2 가지 색상과 그 중간의 보간 색 (2 색 또는 1 색 + 투명)의 총 4 가지 색상 (또는 총 3 색 + 투명)으로 나타내는 비교 으로 간단한 압축 데이터입니다. BC1은 4 × 4 픽셀에서 색조가 크게 변하지 않는 이미지에 뛰어난 색 재현성을 갖지만 4 × 4 픽셀에서 색조가 크게 바뀌는 부분이있는 이미지는 압축에 의한 열화가 블록 상에 노이즈가 보여 버리는 단점이 있습니다. BC2 : DirectX 9에서는 DXT2와 DXT3라고되어 압축 텍스처 형식과 동일한 것, RGB 컬러 값과 4 비트 정밀도 (16톤)의 알 파를 표현할 수있는 압축 텍스처 형식입니다. BC3 : DirectX 9에서는 DXT4와 DXT5라고되어 압축 텍스처 형식과 동일한 것, RGB 컬러 값과 8 비트 정밀도 (256톤)의 알 파를 표현할 수있는 압축 텍스처 형식입니다.
  • 58. BC4 : DirectX 10에서 추가 된 압축 텍스처 형식, 휘도 데이터와 알파 채널과 하이트 맵 등 1 성분 (1 채널)의 정보 만 저장 1성분 데이터의 압축 포맷이기 때문에 보통의 RGB 컬러 이미지를 저장하는 데 사용하지 않음. BC4 압축 데이터는 DirectX 9 시대에 ATI1N (또는 ATI1)라고되어 압축 텍스처 형식과 기본적으로 동일. BC4에는 표현할 수있는 값의 범위가 0.0 ~ 1.0의 BC4U (BC4_UNORM)는 텍스처 형식과 표현 가능한 값의 범위가 -1.0 ~ 1.0의 BC4S (BC4_SNORM)는 텍스처 형식의 2 종류가 존재. BC3와 다른부분은 0~255의 8비트 값이 아니라 0.0~1.0(BC4U), 또는 -1.-0 ~ 1.0(BC4S)의 범위의 값을 나타내는 텍스쳐 형식으로 보간계산이 8비트에 비해 조금 높은 정밀도로 이루어진다.
  • 59. BC5 : DirectX 10에서 추가 된 압축 텍스처 형식으로 노멀 맵 (Normal Map) 등과 같은 2 성분 (2 채널)의 정보를 저장. 2 성분 데이터의 압축 텍스처 형식이기 때문에 보통의 RGB 컬러 이미지를 저장하는 데 사용하지 않음. BC5 압축 데이터 구조는 DirectX 9 시대에 ATI2N (또는 ATI2)와 3Dc 또는 DXN이라고되어 압축 텍스처 형식과 기본적으 로 동일. BC5에서 표현할 수있는 값의 정확도는 BC4와 마찬가지로 그다지 높지 않으므로 1 성분 당 8 비트 정도의 정밀도로 충분한 용도로 밖에 사용할 수 없음. 노멀 맵은 본래는 x, y, z 3 성분이 필요하지만, 정규화 된 벡터는 두 성분의 값을 알면 나머지 1 성분을 계산할 수 있기 때문에 (오차가 큼) 2성분만 저장하는 방식.
  • 60. BC6H : DirectX 11에 추가 된 압축 텍스처 형식으로 HDR 이미지 데이터를 저장하기 위한 것 BC6H는 4 × 4 픽셀마다 128비트의 압축 데이터를 사용하며 아래와 같이 모드 비트, 인덱스 값 파티션, 엔드 포인트 정보가 다른 모드 별로 다른 형식으로 저장된다. HDR을 사용하는 경우 다른 HDR 이미지 포맷에 비해 높은 압축률을 보여주므로 효과적임. BC7 : DirectX 11에 추가 된 압축 텍스처 형식으로 BC1 ~ BC3보다 높은 품질의 이미지 데이터를 저장 하기 위한 것. BC7에는 RGB 값이 선형(Linear)인 BC7_UNORM 및 RGB 값이 sRGB(Gamma)인 BC7_UNORM_SRGB의 2 개의 텍스처 형식이 준비되어 있음니다. 이 형식의 차이는 RGB 값의 색 공간(color space)의 식별을 위한것이며, 압축 알고리즘 자체는 동일. BC7은 종래의 DX2~DX5를 사용하는 텍스쳐의 대체로 가장 좋은 형식이라고 하지만 여러가지 문제로 인해 늦어지는 중.(점 차로 개선중이라고 함)
  • 61.
  • 62. Technical Artist Yi SangYun Game 3D Environment Artist Group https://www.facebook.com/groups/3Dbackground/ illustor@gmail.com