ctx->Extensions.ARB_occlusion_query is set based on the driver-
capabilities, not based on the context type. We need to check against
_mesa_has_ARB_occlusion_query(ctx) instead to figure out if the
extension is really supported. We also need to check for
ARB_occlusion_query2, as ARB_occlusion_query isn't available in core
contexts.
This turns usage of GL_SAMPLES_PASSED into an error on ES 3, as is
required by the spec.
Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
switch (target) {
case GL_SAMPLES_PASSED:
- if (ctx->Extensions.ARB_occlusion_query)
+ if (_mesa_has_ARB_occlusion_query(ctx) ||
+ _mesa_has_ARB_occlusion_query2(ctx))
return &ctx->Query.CurrentOcclusionObject;
else
return NULL;