From: Samuel Iglesias Gonsalvez <sigles...@igalia.com> Signed-off-by: Samuel Iglesias Gonsalvez <sigles...@igalia.com> --- src/mesa/main/format_pack.c.mako | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/mesa/main/format_pack.c.mako b/src/mesa/main/format_pack.c.mako index b9f4656..97adf6e 100644 --- a/src/mesa/main/format_pack.c.mako +++ b/src/mesa/main/format_pack.c.mako @@ -84,7 +84,15 @@ pack_ubyte_${f.short_name()}(const GLubyte src[4], void *dst) %endif ${channel_datatype(c)} ${c.name} = - %if c.type == parser.UNSIGNED: + %if not f.is_normalized(): + %if c.type == parser.FLOAT and c.size == 32: + UBYTE_TO_FLOAT(src[${i}]); + %elif c.type == parser.FLOAT and c.size == 16: + _mesa_float_to_half(UBYTE_TO_FLOAT(src[${i}])); + %else: + (${channel_datatype(c)}) src[${i}]; + %endif + %elif c.type == parser.UNSIGNED: %if f.colorspace == 'srgb' and c.name in 'rgb': util_format_linear_to_srgb_8unorm(src[${i}]); %else: -- 1.9.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev