packUnorm

From OpenGL Reference
Jump to navigation Jump to search

Pack floating-point values into an unsigned integer.

Declaration[edit]

uint packUnorm2x16( vec2 v );
uint packSnorm2x16( vec2 v );
uint packUnorm4x8( vec4 v );
uint packSnorm4x8( vec4 v );


Parameters[edit]

v - Specifies a vector of values to be packed into an unsigned integer.


Description[edit]

 packUnorm2x16 , packSnorm2x16 , packUnorm4x8 and packSnorm4x8 convert each component of the normalized floating-ponit value v into 8- or 16-bit integer values and then packs the results into a 32-bit unsigned intgeter.

The conversion for component c of v to fixed-point is performed as follows:* packUnorm2x16 : round ( clamp (c, 0.0, 1.0) * 65535.0)

  •  packSnorm2x16 : round ( clamp (c, -1.0, 1.0) * 32767.0)
  •  packUnorm4x8 : round ( clamp (c, 0.0, 1.0) * 255.0)
  •  packSnorm4x8 : round ( clamp (c, -1.0, 1.0) * 127.0)


The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.


Version Support[edit]

packUnorm2x16 4.0+
packSnorm2x16 4.2+
packUnorm4x8 4.0+
packSnorm4x8 4.0+

See Also[edit]

 unpackUnorm2x16 , unpackSnorm2x16 , unpackUnorm4x8 , unpackSnorm4x8 


Copyright[edit]

Copyright© 2011-2014 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.