Provided by: opengl-4-man-doc_1.0~svn33624-1_all bug

NAME

       packUnorm - pack floating-point values into an unsigned integer

DECLARATION

       uint packUnorm2x16(vec2 v);

       uint packSnorm2x16(vec2 v);

       uint packUnorm4x8(vec4 v);

       uint packSnorm4x8(vec4 v);

PARAMETERS

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

DESCRIPTION

       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

       ┌──────────────┬───────────────────────────────────────────────────────────────────────────────────┐
       │              │        OpenGL Shading Language Version                                            │
       ├──────────────┼──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┤
       │Function1.101.201.301.401.503.304.004.104.204.304.404.50 │
       │Name          │      │      │      │      │      │      │      │      │      │      │      │      │
       ├──────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │packUnorm2x16 │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │
       ├──────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │packSnorm2x16 │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │  ✔   │  ✔   │  ✔   │
       ├──────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │packUnorm4x8  │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │
       ├──────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │packSnorm4x8  │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │
       └──────────────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘

SEE ALSO

       unpackUnorm2x16,

       unpackSnorm2x16,

       unpackUnorm4x8,

       unpackSnorm4x8

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

COPYRIGHT

       Copyright © 2011-2014 Khronos Group

[FIXME: source]                             01/03/2018                              PACKUNORM(3G)