UNPACKUNORM(3G)

NAME
unpackUnorm2x16,_unpackUnorm4x8,_unpackSnorm4x8 - unpack floating-point values from an unsigned integer

DECLARATION

vec2 unpackUnorm2x16(uint p);

vec2 unpackSnorm2x16(uint p);

vec4 unpackUnorm4x8(uint p);

vec4 unpackSnorm4x8(uint p);

PARAMETERS

p
    Specifies an unsigned integer containing packed floating-point values.

DESCRIPTION

unpackUnorm2x16, unpackSnorm2x16, unpackUnorm4x8 and unpackSnorm4x8 unpack single 32-bit unsigned integers, specified in the parameter p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers or four 8-bit signed integers. Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector.

The conversion for unpacked fixed point value f to floating-point is performed as follows:

    • packUnorm2x16: f / 65535.0

    • packSnorm2x16: clamp(f / 32727.0, -1.0, 1.0)

    • packUnorm4x8: f / 255.0

    • packSnorm4x8: clamp(f / 127.0, -1.0, 1.0)

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

VERSION SUPPORT
 | OpenGL Shading Language Version
Function Name | 1.10 | 1.20 | 1.30 | 1.40 | 1.50 | 3.30 | 4.00 | 4.10 | 4.20 | 4.30 | 4.40 | 4.50
unpackUnorm2x16 | - | - | - | - | - | - | ✔ | ✔ | ✔ | ✔ | ✔ | ✔
unpackSnorm2x16 | - | - | - | - | - | - | - | - | ✔ | ✔ | ✔ | ✔
unpackUnorm4x8 | - | - | - | - | - | - | ✔ | ✔ | ✔ | ✔ | ✔ | ✔
unpackSnorm4x8 | - | - | - | - | - | - | ✔ | ✔ | ✔ | ✔ | ✔ | ✔

SEE ALSO

packUnorm2x16, packUnorm4x8, packSnorm4x8

COPYRIGHT

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. https://opencontent.org/openpub/.

COPYRIGHT
Copyright © 2011-2014 Khronos Group