On 02/13/2012 09:44 AM, Jose Fonseca wrote:


----- Original Message -----
Added in _mesa_pack_uint_24_8_depth_stencil_row().  This could be hit
by something like glDrawPixels(GL_DEPTH_STENCIL,
GL_UNSIGNED_INT_24_8)
into a MESA_FORMAT_Z32_FLOAT_X24S8 buffer.
---
  src/mesa/main/format_pack.c |   13 +++++++++++++
  1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/src/mesa/main/format_pack.c
b/src/mesa/main/format_pack.c
index ea1d95e..e20e361 100644
--- a/src/mesa/main/format_pack.c
+++ b/src/mesa/main/format_pack.c
@@ -2530,6 +2530,19 @@
_mesa_pack_uint_24_8_depth_stencil_row(gl_format format, GLuint n,
           }
        }
        break;
+   case MESA_FORMAT_Z32_FLOAT_X24S8:
+      {
+         const GLdouble scale = 1.0 / (GLdouble) 0xffffff;
+         GLuint *destu = (GLuint *) dst;
+         GLfloat *destf = (GLfloat *) dst;

This is fine, but if there's a lot of similar code for 
MESA_FORMAT_Z32_FLOAT_X24S8, then a

   struct z32f_x24s8 {
       float z;
       unsigned s;
   };

would make the code easier to read.

Yeah, I see that a similar struct is already used in pack_uint_z_Z32_FLOAT_X24S8().

I'll fix this in a follow-on patch.  Thanks.

-Brian
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to