|
|
|
@ -704,7 +704,7 @@ void MeshGLTest::label() { |
|
|
|
/* No-Op version is tested in AbstractObjectGLTest */ |
|
|
|
/* No-Op version is tested in AbstractObjectGLTest */ |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::KHR::debug>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::KHR::debug>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::debug_label>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::debug_label>()) |
|
|
|
CORRADE_SKIP("Required extension is not available"); |
|
|
|
CORRADE_SKIP("Required extension is not supported"); |
|
|
|
|
|
|
|
|
|
|
|
Mesh mesh; |
|
|
|
Mesh mesh; |
|
|
|
|
|
|
|
|
|
|
|
@ -2090,7 +2090,7 @@ void MeshGLTest::addVertexBufferInstancedTransferOwnwership() { |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
CORRADE_SKIP("Required extension is not available."); |
|
|
|
CORRADE_SKIP("Required extension is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
@ -2165,7 +2165,7 @@ void MeshGLTest::addVertexBufferInstancedDynamicTransferOwnwership() { |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
CORRADE_SKIP("Required extension is not available."); |
|
|
|
CORRADE_SKIP("Required extension is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
@ -2757,10 +2757,10 @@ void MeshGLTest::setBaseVertex() { |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Buffer vertices; |
|
|
|
Buffer vertices; |
|
|
|
@ -2790,14 +2790,14 @@ void MeshGLTest::setBaseVertex() { |
|
|
|
void MeshGLTest::setBaseVertexNoExtensionAvailable() { |
|
|
|
void MeshGLTest::setBaseVertexNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isVersionSupported(Version::GLES320)) |
|
|
|
if(Context::current().isVersionSupported(Version::GLES320)) |
|
|
|
CORRADE_SKIP("OpenGL ES 3.2 is available."); |
|
|
|
CORRADE_SKIP("OpenGL ES 3.2 is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
@ -2822,14 +2822,14 @@ void MeshGLTest::setBaseVertexNoExtensionAvailable() { |
|
|
|
void MeshGLTest::setBaseVertexRangeNoExtensionAvailable() { |
|
|
|
void MeshGLTest::setBaseVertexRangeNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isVersionSupported(Version::GLES320)) |
|
|
|
if(Context::current().isVersionSupported(Version::GLES320)) |
|
|
|
CORRADE_SKIP("OpenGL ES 3.2 is available."); |
|
|
|
CORRADE_SKIP("OpenGL ES 3.2 is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
@ -2868,7 +2868,7 @@ void MeshGLTest::setInstanceCount() { |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_instanced>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_instanced>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::draw_instanced>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::draw_instanced>()) |
|
|
|
CORRADE_SKIP("Required extension is not available."); |
|
|
|
CORRADE_SKIP("Required extension is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
@ -2914,10 +2914,10 @@ void MeshGLTest::setInstanceCountBaseInstance() { |
|
|
|
CORRADE_SKIP(Extensions::ARB::base_instance::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ARB::base_instance::string() << "is not supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
typedef Attribute<0, Float> Attribute; |
|
|
|
typedef Attribute<0, Float> Attribute; |
|
|
|
@ -2946,10 +2946,10 @@ void MeshGLTest::setInstanceCountBaseInstance() { |
|
|
|
void MeshGLTest::setInstanceCountBaseInstanceNoExtensionAvailable() { |
|
|
|
void MeshGLTest::setInstanceCountBaseInstanceNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Mesh mesh; |
|
|
|
Mesh mesh; |
|
|
|
@ -2981,7 +2981,7 @@ void MeshGLTest::setInstanceCountIndexed() { |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_instanced>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_instanced>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::draw_instanced>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::draw_instanced>()) |
|
|
|
CORRADE_SKIP("Required extension is not available."); |
|
|
|
CORRADE_SKIP("Required extension is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
@ -3029,10 +3029,10 @@ void MeshGLTest::setInstanceCountIndexedBaseInstance() { |
|
|
|
CORRADE_SKIP(Extensions::ARB::base_instance::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ARB::base_instance::string() << "is not supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Buffer vertices; |
|
|
|
Buffer vertices; |
|
|
|
@ -3062,10 +3062,10 @@ void MeshGLTest::setInstanceCountIndexedBaseInstance() { |
|
|
|
void MeshGLTest::setInstanceCountIndexedBaseInstanceNoExtensionAvailable() { |
|
|
|
void MeshGLTest::setInstanceCountIndexedBaseInstanceNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
@ -3101,10 +3101,10 @@ void MeshGLTest::setInstanceCountIndexedBaseVertex() { |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Buffer vertices; |
|
|
|
Buffer vertices; |
|
|
|
@ -3136,14 +3136,14 @@ void MeshGLTest::setInstanceCountIndexedBaseVertexNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_GLES2 |
|
|
|
#ifndef MAGNUM_TARGET_GLES2 |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isVersionSupported(Version::GLES320)) |
|
|
|
if(Context::current().isVersionSupported(Version::GLES320)) |
|
|
|
CORRADE_SKIP("OpenGL ES 3.2 is available."); |
|
|
|
CORRADE_SKIP("OpenGL ES 3.2 is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
@ -3184,10 +3184,10 @@ void MeshGLTest::setInstanceCountIndexedBaseVertexBaseInstance() { |
|
|
|
CORRADE_SKIP(Extensions::ARB::base_instance::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ARB::base_instance::string() << "is not supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Buffer vertices; |
|
|
|
Buffer vertices; |
|
|
|
@ -3218,10 +3218,10 @@ void MeshGLTest::setInstanceCountIndexedBaseVertexBaseInstance() { |
|
|
|
void MeshGLTest::setInstanceCountIndexedBaseVertexBaseInstanceNoExtensionAvailable() { |
|
|
|
void MeshGLTest::setInstanceCountIndexedBaseVertexBaseInstanceNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::ANGLE::base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::base_vertex_base_instance::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
constexpr UnsignedShort indexData[] = { 2, 1, 0 }; |
|
|
|
@ -3258,7 +3258,7 @@ void MeshGLTest::addVertexBufferInstancedFloat() { |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
CORRADE_SKIP("Required extension is not available."); |
|
|
|
CORRADE_SKIP("Required extension is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
@ -3383,7 +3383,7 @@ void MeshGLTest::resetDivisorAfterInstancedDraw() { |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::instanced_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::NV::instanced_arrays>()) |
|
|
|
CORRADE_SKIP("Required extension is not available."); |
|
|
|
CORRADE_SKIP("Required extension is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::ANGLE::instanced_arrays>()) |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
CORRADE_SKIP(Extensions::ANGLE::instanced_arrays::string() << "is not supported."); |
|
|
|
@ -3809,10 +3809,10 @@ template<class T> void MeshGLTest::multiDrawIndexed() { |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
CORRADE_FAIL_IF(false, "Can't do base vertex here."); |
|
|
|
CORRADE_FAIL_IF(false, "Can't do base vertex here."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
@ -3887,10 +3887,10 @@ template<class T> void MeshGLTest::multiDrawIndexedSparseArrays() { |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
CORRADE_FAIL_IF(false, "Can't do base vertex here."); |
|
|
|
CORRADE_FAIL_IF(false, "Can't do base vertex here."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
@ -3961,10 +3961,10 @@ void MeshGLTest::multiDrawIndexedViews() { |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
#elif !defined(MAGNUM_TARGET_WEBGL) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::OES::draw_elements_base_vertex::string() << "nor" << Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is not supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
CORRADE_FAIL_IF(false, "Can't do base vertex here."); |
|
|
|
CORRADE_FAIL_IF(false, "Can't do base vertex here."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
@ -4092,21 +4092,21 @@ void MeshGLTest::multiDrawIndexedBaseVertexNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::EXT::multi_draw_arrays>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::EXT::multi_draw_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::ANGLE::multi_draw>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::ANGLE::multi_draw>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::EXT::multi_draw_arrays::string() << "nor" << Extensions::ANGLE::multi_draw::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::EXT::multi_draw_arrays::string() << "nor" << Extensions::ANGLE::multi_draw::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Mesh mesh; |
|
|
|
Mesh mesh; |
|
|
|
@ -4133,21 +4133,21 @@ void MeshGLTest::multiDrawIndexedViewsBaseVertexNoExtensionAvailable() { |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::EXT::multi_draw_arrays>() && |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::EXT::multi_draw_arrays>() && |
|
|
|
!Context::current().isExtensionSupported<Extensions::ANGLE::multi_draw>()) |
|
|
|
!Context::current().isExtensionSupported<Extensions::ANGLE::multi_draw>()) |
|
|
|
CORRADE_SKIP("Neither" << Extensions::EXT::multi_draw_arrays::string() << "nor" << Extensions::ANGLE::multi_draw::string() << "is available."); |
|
|
|
CORRADE_SKIP("Neither" << Extensions::EXT::multi_draw_arrays::string() << "nor" << Extensions::ANGLE::multi_draw::string() << "is supported."); |
|
|
|
#else |
|
|
|
#else |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw>()) |
|
|
|
if(!Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw::string() << "is not available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw::string() << "is not supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
#ifndef MAGNUM_TARGET_WEBGL |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::EXT::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::EXT::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::OES::draw_elements_base_vertex>()) |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::OES::draw_elements_base_vertex::string() << "is supported."); |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
#elif !defined(MAGNUM_TARGET_GLES2) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
if(Context::current().isExtensionSupported<Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance>()) |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is available."); |
|
|
|
CORRADE_SKIP(Extensions::WEBGL::multi_draw_instanced_base_vertex_base_instance::string() << "is supported."); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
Mesh mesh; |
|
|
|
Mesh mesh; |
|
|
|
|