[Piglit] [PATCH 04/10] nv_conditional_render: port tests to gles3

Erik Faye-Lund erik.faye-lund at collabora.com
Wed Nov 7 09:25:14 UTC 2018


On Wed, 2018-11-07 at 10:18 +0100, Erik Faye-Lund wrote:
> On Wed, 2018-11-07 at 09:35 +0100, Erik Faye-Lund wrote:
> > On Tue, 2018-11-06 at 18:11 -0500, Ilia Mirkin wrote:
> > > On Tue, Nov 6, 2018 at 1:38 PM Erik Faye-Lund
> > > <erik.faye-lund at collabora.com> wrote:
> > > > On Tue, 2018-11-06 at 13:25 -0500, Ilia Mirkin wrote:
> > > > > On Tue, Nov 6, 2018 at 1:14 PM Erik Faye-Lund
> > > > > <erik.faye-lund at collabora.com> wrote:
> > > > > > On Mon, 2018-11-05 at 23:56 -0500, Ilia Mirkin wrote:
> > > > > > > On Mon, Nov 5, 2018 at 1:35 PM Erik Faye-Lund
> > > > > > > <erik.faye-lund at collabora.com> wrote:
> > > > > > > > On Nov 5, 2018 19:20, Ilia Mirkin <imirkin at alum.mit.edu
> > > > > > > > >
> > > > > > > > wrote:
> > > > > > > > 
> > > > > > > > Unless there's something that makes this a pain for
> > > > > > > > ES2,
> > > > > > > > I'd
> > > > > > > > rather
> > > > > > > > these tests were runnable with gl_es_version = 20. You
> > > > > > > > can
> > > > > > > > test
> > > > > > > > with
> > > > > > > > MESA_GLES_VERSION_OVERRIDE=20.
> > > > > > > > 
> > > > > > > > 
> > > > > > > > Yeah, I already started on this. There's a few of them
> > > > > > > > that
> > > > > > > > won't
> > > > > > > > work on es2, like the blitframebuffer test etc. I'll
> > > > > > > > send
> > > > > > > > an
> > > > > > > > updated version soon.
> > > > > > > 
> > > > > > > It's not necessary to kill yourself making all of these
> > > > > > > work
> > > > > > > in
> > > > > > > ES2.
> > > > > > > If they don't work without larger changes, keep them at
> > > > > > > ES3.
> > > > > > 
> > > > > > Yeah, OK. It gets kinda hairy with the ARB_occlusion_query
> > > > > > vs
> > > > > > GL_EXT_occlusion_query_boolean bits, at least if we want to
> > > > > > support
> > > > > > both. So yeah, perhaps getting the tests running on gles3
> > > > > > is
> > > > > > OK
> > > > > > for
> > > > > > now?
> > > > > 
> > > > > Are you saying that for all of them are hairy? Or just some
> > > > > of
> > > > > them?
> > > > > I
> > > > > don't think GLES3 occlusion queries are any more full-
> > > > > featured
> > > > > than
> > > > > GL_EXT_occlusion_query_boolean allows for...
> > > > > 
> > > > >   -ilia
> > > > 
> > > > Kinda all of them.
> > > > 
> > > > It's about GL_SAMPLES_PASSED vs GL_ANY_SAMPLES_PASSED_EXT and
> > > > glGenQueries vs glGenQueriesEXT. Since GL_ANY_SAMPLES_PASSED
> > > > isn't
> > > > part
> > > > of ARB_occlusion_query (only ARB_occlusion_query2 and
> > > > GL_EXT_occlusion_query_boolean), either we need some additional
> > > > logic
> > > > to switch between the enums...
> > > 
> > > I'm confused though... how does ES3 help? You still need to use
> > > ANY_SAMPLES on ES3, no?
> > 
> > Good question. For some reason, it passes on ES3 for me without,
> > but
> > not on ES2. I'll try to figure out why...
> > 
> 
> get_query_binding_point() in queryobj.c contains this code, which
> seems
> to cause this:
> 
> ---8<---
> 
>    /* From GL_EXT_occlusion_query_boolean spec:
>     *
>     *    "Accepted by the <target> parameter of BeginQueryEXT,
> EndQueryEXT,
>     *    and GetQueryivEXT:
>     *
>     *   ANY_SAMPLES_PASSED_EXT                         0x8C2F
>     *   ANY_SAMPLES_PASSED_CONSERVATIVE_EXT            0x8D6A"
>     */
>    if ((_mesa_is_gles(ctx) && ctx->Version == 20) &&
>        (target != GL_ANY_SAMPLES_PASSED &&
>         target != GL_ANY_SAMPLES_PASSED_CONSERVATIVE))
>       return NULL;
> 
> ---8<---
> 
> It's unclear to me why this check is limited to ES2 like this. I'm
> guessing the intention is not prevent
> GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN here. But it allows
> *everything* for ES3, which seems bad.
> 
> I'll investigate further and add a patch for this to this series...

Uh, to my Mesa-series :P



More information about the Piglit mailing list