User:SirYodaJedi/Image formats
		
		
		
		
		
		Jump to navigation
		Jump to search
		
 Note:The Steam versions of
Note:The Steam versions of  support RLE-compressed TGA files for certain use cases, such as skyboxes and detail textures. Other use cases, such as taskbar icons, do not support RLE compression.
 support RLE-compressed TGA files for certain use cases, such as skyboxes and detail textures. Other use cases, such as taskbar icons, do not support RLE compression.
Not all programs can export compressed TGAs; GIMP does this when exporting to TGA by default. Make sure that the origin is set to "bottom-left".
 Note:All formats supported by
Note:All formats supported by  can be compressed with PNG-style deflate compression, using its custom v7.6 VTF format. This is used in conjunction with whatever inherent GPU-supported compression format is being used; as such, it is not mentioned in this table.
 can be compressed with PNG-style deflate compression, using its custom v7.6 VTF format. This is used in conjunction with whatever inherent GPU-supported compression format is being used; as such, it is not mentioned in this table.
 Note:Although the VTF format used by
Note:Although the VTF format used by  supports encoding color channels in multiple orders (RGB, BGR, RGBA, BGRA, ARGB, ABGR), only BGR and BGRA are guaranteed to work correctly. By comparison,
 supports encoding color channels in multiple orders (RGB, BGR, RGBA, BGRA, ARGB, ABGR), only BGR and BGRA are guaranteed to work correctly. By comparison,  prefers RGB and RGBA, using its VTEX format.
 prefers RGB and RGBA, using its VTEX format.
 Note:Additionally, formats with a 1-bit alpha channel, such as BGRA5551 or BGR888_BLUESCREEN are not as reliable as those with a 4-bit or 8-bit alpha channel, and will often treat the entire image as opaque, with the transparent pixels appearing as black.
Note:Additionally, formats with a 1-bit alpha channel, such as BGRA5551 or BGR888_BLUESCREEN are not as reliable as those with a 4-bit or 8-bit alpha channel, and will often treat the entire image as opaque, with the transparent pixels appearing as black.
Formats with 1-bit alpha should be avoided anyway (except in ), even when using $alphatest, as it will result in inaccurate transparency on mipmaps.
), even when using $alphatest, as it will result in inaccurate transparency on mipmaps.
 Note:
Note: ,
,  , and
, and  all support non-floating point HDR textures, however floating point is preferred, as it allows for better precision over the texture's brightness. VTEX defaults to floating point when using
 all support non-floating point HDR textures, however floating point is preferred, as it allows for better precision over the texture's brightness. VTEX defaults to floating point when using 
		
	
| Supported in | ||||||
|---|---|---|---|---|---|---|
| Format |  GoldSrc |  Source |  Portal 2: Community Edition |  Source 2 | Compressed? | Recommended usage | 
| P8 (256-color) | Yes, except for main menu backgrounds and detail textures | No (use BGR565 or BGRA8888) | No (use BC7) | No (use BC7) | Yes, 1 palette for entire image with 256 colors |  : Most textures (world, models, sprites, overviews, etc.) | 
| BGR888, RGB888 (24-bit true color) | Limited; only for skyboxes, detail textures, main menu backgrounds, and VGUI2 elements | Yes | Yes | Yes | No (except in  , see notes) |  : Skyboxes, detail textures, main menu backgrounds, and VGUI2 elements | 
| BGRA8888, RGBA8888 (32-bit true color with translucency) | No | Yes | Yes | Yes | No |  : Densely detailed textures with alpha channels 
 | 
| BGRA8888 (Source 1 Compressed HDR) | No | Yes | Yes | No (use BC6H) | Yes; alpha channel used as a multiplicand rather than for translucency (see Valve Texture Format#HDR compression) |  : HDR skyboxes | 
| BGRA16161616F, RGBA16161616F (16 bpc Floating Point HDR with translucency) | No | Yes | Yes | Yes | No |  ,  ,  : HDR textures with an alpha channel | 
| BGR565 (16-bit color) | No | Yes | Yes | No (use BC7) | No |  : Low-res normal maps without specular mask; 
 | 
| BGRA4444 (16-bit color with translucency) | No | Yes | Yes | No (use BC7) | No |  : Moderately detailed low-res normal maps with specular mask via alpha channel ($normalmapalphaenvmapmask). | 
| I8 (8-bit greyscale) | No | Yes | Yes | Yes | No |  : Specular masks for materials without a normal map. 
 | 
| IA88 (8-bit greyscale with translucency) | No | Yes | Yes | Yes | No |  : Greyscale decals with an alpha channel | 
| DXT1 (AKA BC1) | No (except in  Counter-Strike (Xbox)) | Yes | Yes | Yes | Yes; two explicit BGR565 colors and two interpolated colors per 4x4 block |  ,  , &  : Moderately detailed high-res textures with no alpha channel | 
| DXT3 (AKA BC2) | No | Yes | Yes | No (use DXT5) | RGB only; RGB handled like DXT1, with uncompressed 4-bit alpha |  ,  : Not recommended, use DXT5 instead | 
| DXT5 (AKA BC3) | No | Yes | Yes | Yes | Yes; RGB handled like DXT1, with alpha handled like ATI1N |  ,  , &  : Moderately detailed high-res textures with an alpha channel | 
| ATI1N (AKA BC4) | No | No (use I8) | Yes | Yes | Yes; four explicit I8 values and four interpolated values per 4x4 block |  : Specular masks for materials without a normal map. 
 | 
| ATI2N (AKA BC5) | No | No (use BGR565 if really necessary) | Yes | Yes | Yes; two independent ATI1N-style channels (red and green) |  : $blendmodulatetexture, perhaps | 
| BC6H (AKA BC6) | No | No (use compressed BGRA8888) | Yes | Yes | Yes; four explicit RGB161616 or RGB161616F colors and four interpolated colors per 4x4 block |  &  : HDR skyboxes | 
| BC7 (AKA BC6) | No | No (use BGR565 or BGRA8888) | Yes | Yes | Yes; four explicit RGB888 or RGBA8888 colors and four interpolated colors per 4x4 block |  &  : Whenever DXT1 or DXT5 is too blocky and/or DXT green tint needs to be avoided. | 
 Note:The Steam versions of
Note:The Steam versions of  support RLE-compressed TGA files for certain use cases, such as skyboxes and detail textures. Other use cases, such as taskbar icons, do not support RLE compression.
 support RLE-compressed TGA files for certain use cases, such as skyboxes and detail textures. Other use cases, such as taskbar icons, do not support RLE compression.Not all programs can export compressed TGAs; GIMP does this when exporting to TGA by default. Make sure that the origin is set to "bottom-left".
 Note:All formats supported by
Note:All formats supported by  can be compressed with PNG-style deflate compression, using its custom v7.6 VTF format. This is used in conjunction with whatever inherent GPU-supported compression format is being used; as such, it is not mentioned in this table.
 can be compressed with PNG-style deflate compression, using its custom v7.6 VTF format. This is used in conjunction with whatever inherent GPU-supported compression format is being used; as such, it is not mentioned in this table. Note:Although the VTF format used by
Note:Although the VTF format used by  supports encoding color channels in multiple orders (RGB, BGR, RGBA, BGRA, ARGB, ABGR), only BGR and BGRA are guaranteed to work correctly. By comparison,
 supports encoding color channels in multiple orders (RGB, BGR, RGBA, BGRA, ARGB, ABGR), only BGR and BGRA are guaranteed to work correctly. By comparison,  prefers RGB and RGBA, using its VTEX format.
 prefers RGB and RGBA, using its VTEX format.
 Note:Additionally, formats with a 1-bit alpha channel, such as BGRA5551 or BGR888_BLUESCREEN are not as reliable as those with a 4-bit or 8-bit alpha channel, and will often treat the entire image as opaque, with the transparent pixels appearing as black.
Note:Additionally, formats with a 1-bit alpha channel, such as BGRA5551 or BGR888_BLUESCREEN are not as reliable as those with a 4-bit or 8-bit alpha channel, and will often treat the entire image as opaque, with the transparent pixels appearing as black.Formats with 1-bit alpha should be avoided anyway (except in
 ), even when using $alphatest, as it will result in inaccurate transparency on mipmaps.
), even when using $alphatest, as it will result in inaccurate transparency on mipmaps. Note:
Note: ,
,  , and
, and  all support non-floating point HDR textures, however floating point is preferred, as it allows for better precision over the texture's brightness. VTEX defaults to floating point when using
 all support non-floating point HDR textures, however floating point is preferred, as it allows for better precision over the texture's brightness. VTEX defaults to floating point when using nocompress with pfm (see HDR Skybox Creation#Creating the Materials).