@ -3568,6 +3568,17 @@ void MeshGLTest::multiDraw() {
auto & & data = MultiDrawData [ testCaseInstanceId ( ) ] ;
auto & & data = MultiDrawData [ testCaseInstanceId ( ) ] ;
setTestCaseDescription ( data . name ) ;
setTestCaseDescription ( data . name ) ;
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_SKIP ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported. " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_SKIP ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported. " ) ;
# endif
# endif
# ifndef MAGNUM_TARGET_GLES2
# ifndef MAGNUM_TARGET_GLES2
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
@ -3586,17 +3597,6 @@ void MeshGLTest::multiDraw() {
# endif
# endif
}
}
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_INFO ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported, using fallback implementation " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_INFO ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported, using fallback implementation " ) ;
# endif
# endif
const struct {
const struct {
Vector2 position ;
Vector2 position ;
Vector4 value ;
Vector4 value ;
@ -3631,6 +3631,17 @@ void MeshGLTest::multiDrawSparseArrays() {
auto & & data = MultiDrawData [ testCaseInstanceId ( ) ] ;
auto & & data = MultiDrawData [ testCaseInstanceId ( ) ] ;
setTestCaseDescription ( data . name ) ;
setTestCaseDescription ( data . name ) ;
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_SKIP ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported. " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_SKIP ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported. " ) ;
# endif
# endif
# ifndef MAGNUM_TARGET_GLES2
# ifndef MAGNUM_TARGET_GLES2
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
@ -3649,17 +3660,6 @@ void MeshGLTest::multiDrawSparseArrays() {
# endif
# endif
}
}
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_INFO ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported, using fallback implementation " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_INFO ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported, using fallback implementation " ) ;
# endif
# endif
const struct {
const struct {
Vector2 position ;
Vector2 position ;
Vector4 value ;
Vector4 value ;
@ -3785,6 +3785,17 @@ template<class T> void MeshGLTest::multiDrawIndexed() {
auto & & data = MultiDrawIndexedData [ testCaseInstanceId ( ) ] ;
auto & & data = MultiDrawIndexedData [ testCaseInstanceId ( ) ] ;
setTestCaseDescription ( data . name ) ;
setTestCaseDescription ( data . name ) ;
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_SKIP ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported. " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_SKIP ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported. " ) ;
# endif
# endif
# ifndef MAGNUM_TARGET_GLES2
# ifndef MAGNUM_TARGET_GLES2
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
@ -3807,17 +3818,6 @@ template<class T> void MeshGLTest::multiDrawIndexed() {
# endif
# endif
}
}
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_INFO ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported, using fallback implementation " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_INFO ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported, using fallback implementation " ) ;
# endif
# endif
const struct {
const struct {
Vector2 position ;
Vector2 position ;
Vector4 value ;
Vector4 value ;
@ -3863,6 +3863,17 @@ template<class T> void MeshGLTest::multiDrawIndexedSparseArrays() {
auto & & data = MultiDrawIndexedData [ testCaseInstanceId ( ) ] ;
auto & & data = MultiDrawIndexedData [ testCaseInstanceId ( ) ] ;
setTestCaseDescription ( data . name ) ;
setTestCaseDescription ( data . name ) ;
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_SKIP ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported. " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_SKIP ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported. " ) ;
# endif
# endif
# ifndef MAGNUM_TARGET_GLES2
# ifndef MAGNUM_TARGET_GLES2
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
if ( data . vertexId & & ! GL : : Context : : current ( ) . isExtensionSupported < GL : : Extensions : : MAGNUM : : shader_vertex_id > ( ) )
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
CORRADE_SKIP ( " gl_VertexID not supported " ) ;
@ -3885,17 +3896,6 @@ template<class T> void MeshGLTest::multiDrawIndexedSparseArrays() {
# endif
# endif
}
}
# ifdef MAGNUM_TARGET_GLES
# ifndef MAGNUM_TARGET_WEBGL
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : EXT : : multi_draw_arrays > ( ) & &
! Context : : current ( ) . isExtensionSupported < Extensions : : ANGLE : : multi_draw > ( ) )
CORRADE_INFO ( " Neither " < < Extensions : : EXT : : multi_draw_arrays : : string ( ) < < " nor " < < Extensions : : ANGLE : : multi_draw : : string ( ) < < " is supported, using fallback implementation " ) ;
# else
if ( ! Context : : current ( ) . isExtensionSupported < Extensions : : WEBGL : : multi_draw > ( ) )
CORRADE_INFO ( Extensions : : WEBGL : : multi_draw : : string ( ) < < " is not supported, using fallback implementation " ) ;
# endif
# endif
const struct {
const struct {
Vector2 position ;
Vector2 position ;
Vector4 value ;
Vector4 value ;