TGA 또는 DDS 또는 PNG 또는 JPEG. 동일합니까?
파일 형식의 그. 파일 형식은 비디오 메모리의 텍스처 형식과 관련이 거의 없습니다.
TGA, PNG 및 JPEG는 일반적인 파일 형식입니다. 게임이 파일을 읽을 때 파일을 압축 해제하고 내부 표현으로 변환합니다. 이러한 형식에서 png는 무손실 압축을 제공하고 jpeg는 손실 압축을 제공하며 tga는 일반적으로 압축되지 않습니다. 나는 png와 tga만이 투명성을지지한다고 생각한다.
DDS는 DirectX에서 지원하는 텍스처 형식 중 하나에 데이터를 저장하기 때문에 다소 DirectX 지향입니다. 알파 채널 유무에 관계없이 압축 (손실), 압축되지 않은 상태 일 수 있습니다.
내가 아는 한, DirectX는 압축 형식과 압축되지 않은 형식의 두 가지 형식 (형식)을 지원합니다. 그 외에도 텍스처에 밉맵이 있거나 밉맵이 없을 수 있습니다. OpenGL 은 압축 형식을 지원해야하지만 OpenGL에서 사용하지 않으므로 잘 모르겠습니다.
밉맵이없는 비 압축 2D 텍스처에는 비디오 메모리의 바이트가 적어도 width*height*pixel_size
(드라이버가 더 많이 할당 할 수 있음)이 필요합니다.
밉맵 (전체 밉맵 체인)이있는 비 압축 2D 텍스처는 적어도 width*height*pixel_size*2
바이트의 비디오 메모리를 필요로합니다.
밉맵이없는 비 압축 큐빅 텍스처는 적어도 size*size*pixel_size*6
바이트의 데이터를 필요로합니다.
밉맵이없는 비 압축 볼륨 텍스처는 적어도 width*height*depth*pixel_size
바이트의 데이터를 필요로합니다.
압축 된 텍스처는 압축되지 않은 것보다 적은 바이트를 사용하지만 정확한 바이트 수를 예측하기는 어렵습니다.
이제는 here's a list of texture formats for DirectX입니다. DXT이 아닌 것은 압축되지 않았지만 채널 집합과 채널 당 비트 수가 다릅니다. 예를 들어 여러 가지 16 비트 텍스처 형식이 있습니다. DXT 형식은 손실 압축을 제공하므로 셰이더의 노멀 맵에 적용하면 눈에 띄지 않는 추악한 아티팩트가 생성됩니다. 데이터에 따라 DXT 형식은 텍스처 크기를 크게 줄일 수 있습니다. 형식이 손실되기 때문에 일반지도와 알파 채널로 가면되는 2D 미술에 적합하지 않습니다.
일부 참조
당신은 (당신은 IOS와 같은 뭔가를 개발하는 경우)의 DirectX SDK를, OpenGL을 표준 또는 플랫폼 설명서를 다운로드하고 독서를 시작할 수 있습니다.