Packing Data Format
Filed under Programming
During shader development, packing/unpacking from one format to another format is very common. Sometimes, the purpose is to support older graphics card and occasionally, it is more efficient to do so. Below are growing list of packing/unpacking methods in shader.
Packing Float to RGBA32
{
const float4 pack = float4(1, 256, 65536, 16777216);
return f * pack;
}
Unpacking RGBA32 to Float
{
const float4 unpack = float4(1.0f, 1.0f/256, 1.0f/65536, 1.0f/16777216);
return dot(rgba, unpack);
}
Jan17








