On Thu, Feb 6, 2014 at 1:43 AM, Ilia Mirkin <[email protected]> wrote: > On Sun, Feb 2, 2014 at 8:45 PM, Ilia Mirkin <[email protected]> wrote: >> On Thu, Jan 30, 2014 at 2:36 AM, Ilia Mirkin <[email protected]> wrote: >>> If we just blindly call glBindFramebuffer, that will cause the piglit >>> test to skip. Make sure that ARB_framebuffer_object is supported first. >> >> BTW, an alternative is to flip it to use EXT_fbo (i.e. >> glBindFramebufferEXT & co), but I don't know if I can just do that and >> not suffer some sort of consequence. I'm unfortunately not very >> familiar with all these exttensions, and esp how it's all used in >> piglit. > > ping? would be nice to make it possible to run piglit on nv30/nv40 cards...
ping again? When I brought this up on IRC, the responses fell into the following categories: (a) Make nv40 support ARB_fbo, how hard can it be... Perhaps it can be done reasonably (I don't think so), but not related to the framework trying to use ARB_fbo without checking for it. (b) Change the piglit dispatch logic to fall back on the EXT version. There were counter-arguments saying that the EXT version was somehow different. I don't know anything about this, and am not in a position to decide one way or another which is right. (c) Switch to using EXT always. Similar to (b) -- I'm not sure what effect that'll have on things. The reality is that _today_ the fbo framework (or at least this bit of it) uses ARB_fbo. Perhaps there can be some other day when the fallbacks are such that it doesn't and it's all tested and so on. But that is not today. So any objections to this change going in, which fixes the fbo framework to accurately represent that it uses an ARB_fbo call and thus must have the extension? (And if it ends up returning false, it falls back on the winsys framework, as if -fbo wasn't passed in.) If I don't hear anything in the next couple of days, I'll check this in. Cheers, -ilia > >> >>> >>> Signed-off-by: Ilia Mirkin <[email protected]> >>> --- >>> >>> This comes up with the nv30 driver, which disables ARB_fbo due to not being >>> able to support render targets with differing sizes, but provides OpenGL 2.1 >>> which is enough to satisfy the first check. >>> >>> tests/util/piglit-framework-gl/piglit_fbo_framework.c | 3 +++ >>> 1 file changed, 3 insertions(+) >>> >>> diff --git a/tests/util/piglit-framework-gl/piglit_fbo_framework.c >>> b/tests/util/piglit-framework-gl/piglit_fbo_framework.c >>> index 027b400..8e82657 100644 >>> --- a/tests/util/piglit-framework-gl/piglit_fbo_framework.c >>> +++ b/tests/util/piglit-framework-gl/piglit_fbo_framework.c >>> @@ -70,6 +70,9 @@ init_gl(struct piglit_wfl_framework *wfl_fw) >>> >>> if (piglit_get_gl_version() < 20) >>> return false; >>> + >>> + if (!piglit_is_extension_supported("GL_ARB_framebuffer_object")) >>> + return false; >>> #endif >>> >>> glGenFramebuffers(1, &piglit_winsys_fbo); >>> -- >>> 1.8.3.2 >>> _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
