On 10/01/2015 10:12 PM, Ian Romanick wrote:
On 10/01/2015 09:50 AM, Tapani Pälli wrote:
On 10/01/2015 03:17 PM, Iago Toral wrote:
On Thu, 2015-10-01 at 08:28 +0300, Tapani Pälli wrote:
Patch adds missing type (used with NV_read_depth) so that it gets
NV_read_depth_stencil?
handled correctly. Also add type to _mesa_problem output to aid
debugging.
Signed-off-by: Tapani Pälli <tapani.pa...@intel.com>
---
src/mesa/main/pack.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/mesa/main/pack.c b/src/mesa/main/pack.c
index 7147fd6..54a0c42 100644
--- a/src/mesa/main/pack.c
+++ b/src/mesa/main/pack.c
@@ -1074,6 +1074,7 @@ _mesa_pack_depth_span( struct gl_context *ctx,
GLuint n, GLvoid *dest,
}
}
break;
+ case GL_UNSIGNED_INT_24_8:
Is it okay to store 32-bit integers in this case? that's what the code
below does. The spec says that the 8 stencil bits are undefined, but
don't we need to convert the depth value to a 24-bit integer scale?
(i.e. make 1.0 translate to 2^24-1 not 2^32-1).
I was going to make the same comment.
Oh, I thought stencil was included, I'll check if there's any existing
app/test that would actually use this.
The incoming depthSpan is a float*, so there's no stencil there. I
think we'll need to cobble together a piglit test for this case. Can
FYI I'm now working on a Piglit test for NV_read_depth but I sent a
patch already because of having some pressure to get that error out of
CTS run. Meanwhile patch can be tested with following CTS test:
ES3-CTS.gtf.GL3Tests.packed_pixels.packed_pixels
I've also tested that I get same values back as Nvidia with my
unfinished test, it now simply runs a loop rendering rectangle in depths
from -1.0 to 1.0, reads back and compares to expected result. I'm
working on to iterate over some more formats.
this only be hit of NV_read_depth_stencil is exported? I'm just
wondering because Mesa doesn't support that extension. How is this even
being hit?
Iago
case GL_UNSIGNED_INT:
{
GLuint *dst = (GLuint *) dest;
@@ -1124,7 +1125,8 @@ _mesa_pack_depth_span( struct gl_context *ctx,
GLuint n, GLvoid *dest,
}
break;
default:
- _mesa_problem(ctx, "bad type in _mesa_pack_depth_span");
+ _mesa_problem(ctx, "bad type in _mesa_pack_depth_span (%s)",
+ _mesa_enum_to_string(dstType));
}
free(depthCopy);
I definitely approve of this part. If you want to split that into its
own patch, that's
Reviewed-by: Ian Romanick <ian.d.roman...@intel.com>
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev