https://bugs.freedesktop.org/show_bug.cgi?id=44039
--- Comment #5 from Ian Romanick <i...@freedesktop.org> 2012-01-16 12:00:58 PST --- (In reply to comment #4) > OK, I think I see the problem. I reproduced something similar with a piglit > test. > > I have a gen 4 i965 laptop. If I compile with TEXTURE_FLOAT_ENABLED, glxinfo > says GL_ARB_texture_float (and GL_ARB_texture_rg) is supported. But > internally, the ctx->TextureFormatSupported[MESA_FORMAT_RGBA_FLOAT32] entry is > false (so is the R_FLOAT32 entry). > > In texformat.c the switch case for GL_R32F (0x822e) reads: > > case GL_R32F: > RETURN_IF_SUPPORTED(MESA_FORMAT_R_FLOAT32); > RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); > break; > > Neither the R_FLOAT32 nor RGBA_FLOAT32 formats are supported so we end up > generating the error message in the bug title. > > The solution is to add a few more tests: > > case GL_R32F: > RETURN_IF_SUPPORTED(MESA_FORMAT_R_FLOAT32); > RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT32); > RETURN_IF_SUPPORTED(MESA_FORMAT_R_FLOAT16); > RETURN_IF_SUPPORTED(MESA_FORMAT_RGBA_FLOAT16); > break; We didn't already do this because the OpenGL 3.0 spec requires that GL_R32F be 32-bit float. Ken dug into this a bit, and the problem is that GEN4 can't do filtering on 32-bit float formats. Our current thinking is to just disable GL_ARB_texture_float on GEN4 and GEN4.5. We could maybe add this work-around, but we'd have to modify compute_version to only advertise 3.0 if the required FLOAT32 formats are supported. Is that doable? > and use a 16-bit format if the 32-bit format is not supported. We already do > the same thing earlier in the function for the GL_RGBA_32F case, etc. > > I'll write a patch for this. -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev