All pastes #759609 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-11-03 10:16 UTC
rendered paste body
float4 pack(float f, int iRange)

{

       float4 fReturn = 0.0f;

       float fRange = iRange * 1.0f;

       int i = (int) (f * iRange);

       fReturn.r = i / fRange;

       f = (f - fReturn.r) * fRange;

       i = (int) (f * iRange);

       fReturn.g = i / fRange;

       f = (f - fReturn.g) * fRange;

       i = (int) (f * iRange);

       fReturn.b = i / fRange;

       fReturn.a = 0.0f;

       return fReturn;

}

 

float unpack(float4 f, int iRange)

{

       float fRange = iRange * 1.0f;

       return f.r + f.g / fRange + f.b / (fRange * fRange);

}