summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/format_unpack.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2011-11-22 21:02:08 +0100
committerMarek Olšák <[email protected]>2011-11-23 00:00:40 +0100
commita7c107f3bc68ddeea8c24eec43c05000224ec93e (patch)
tree2ef7c46094f2b0600ffa370032cd97fa3ee8508a /src/mesa/main/format_unpack.c
parent27505a105a4bf8b7329b87d29e1625e545508e4e (diff)
mesa: re-implement unpacking of DEPTH_COMPONENT32F
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43122 Reviewed-by: Eric Anholt <[email protected]> Tested-by: Kai Wasserbäch <[email protected]>
Diffstat (limited to 'src/mesa/main/format_unpack.c')
-rw-r--r--src/mesa/main/format_unpack.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mesa/main/format_unpack.c b/src/mesa/main/format_unpack.c
index ae7a04b02ca..72a4175aa86 100644
--- a/src/mesa/main/format_unpack.c
+++ b/src/mesa/main/format_unpack.c
@@ -1751,6 +1751,12 @@ unpack_float_z_Z32(GLuint n, const void *src, GLfloat *dst)
}
static void
+unpack_float_z_Z32F(GLuint n, const void *src, GLfloat *dst)
+{
+ memcpy(dst, src, n * sizeof(float));
+}
+
+static void
unpack_float_z_Z32X24S8(GLuint n, const void *src, GLfloat *dst)
{
const GLfloat *s = ((const GLfloat *) src);
@@ -1783,6 +1789,9 @@ _mesa_unpack_float_z_row(gl_format format, GLuint n,
case MESA_FORMAT_Z32:
unpack = unpack_float_z_Z32;
break;
+ case MESA_FORMAT_Z32_FLOAT:
+ unpack = unpack_float_z_Z32F;
+ break;
case MESA_FORMAT_Z32_FLOAT_X24S8:
unpack = unpack_float_z_Z32X24S8;
break;