Difference between revisions of "ChannelPacking"
EricChadwick (Talk | contribs) (headings, tools, see also) |
EricChadwick (Talk | contribs) (better summary, etc.) |
||
Line 1: | Line 1: | ||
− | Channel packing | + | Channel packing means using different grayscale images in each of a texture's image channels... Red, Green, Blue, and optionally Alpha. |
+ | |||
+ | These channels are usually used to represent traditional RGB color data, plus Alpha transparency. However each channel is really just a grayscale image, so different types of image data can be stored in them. | ||
+ | |||
+ | Individual channels can be extracted by a [[Shaders|shader]] to use them for particular effects, for example the red channel for glow, green channel for specular, blue channel for sound types, alpha channel for physics info, etc. Each channel can have a totally different layout, and thus use different [[TextureCoordinates|UVs]]. | ||
+ | |||
+ | Games use this technique to avoid loading separate grayscale images, which saves [[Memory]]. The tradeoff is in increased shader complexity. | ||
See also [[Texture atlas]] and [[MultiTexture]]. | See also [[Texture atlas]] and [[MultiTexture]]. | ||
== Compression Artifacts == | == Compression Artifacts == | ||
− | If you save a channel-packed texture using DXT compression, it | + | If you save a channel-packed texture using [[DXT]] compression, it may introduce blocky artifacts to your channels. See also [[Normal_Map_Compression]]. |
== Tools == | == Tools == |
Revision as of 11:05, 1 February 2015
Channel packing means using different grayscale images in each of a texture's image channels... Red, Green, Blue, and optionally Alpha.
These channels are usually used to represent traditional RGB color data, plus Alpha transparency. However each channel is really just a grayscale image, so different types of image data can be stored in them.
Individual channels can be extracted by a shader to use them for particular effects, for example the red channel for glow, green channel for specular, blue channel for sound types, alpha channel for physics info, etc. Each channel can have a totally different layout, and thus use different UVs.
Games use this technique to avoid loading separate grayscale images, which saves Memory. The tradeoff is in increased shader complexity.
See also Texture atlas and MultiTexture.
Compression Artifacts
If you save a channel-packed texture using DXT compression, it may introduce blocky artifacts to your channels. See also Normal_Map_Compression.
Tools
Examples