diff --git a/src/Magnum/GL/Test/MeshGLTest.cpp b/src/Magnum/GL/Test/MeshGLTest.cpp index 531d4d0b0..da5fc2b64 100644 --- a/src/Magnum/GL/Test/MeshGLTest.cpp +++ b/src/Magnum/GL/Test/MeshGLTest.cpp @@ -1210,6 +1210,11 @@ void MeshGLTest::addVertexBufferUnsignedIntWithUnsignedShort() { const auto value = Checker(IntegerShader("uint"), RenderbufferFormat::R16UI, mesh) .get(PixelFormat::RedInteger, PixelType::UnsignedShort); + #if defined(MAGNUM_TARGET_GLES) && !defined(MAGNUM_TARGET_WEBGL) + CORRADE_EXPECT_FAIL_IF(Context::current().detectedDriver() & Context::DetectedDriver::SwiftShader, + "SwiftShader doesn't like integer buffers with anything else than (Unsigned)Int"); + #endif + MAGNUM_VERIFY_NO_GL_ERROR(); CORRADE_COMPARE(value, 16583); } @@ -1243,6 +1248,11 @@ void MeshGLTest::addVertexBufferUnsignedIntWithShort() { const auto value = Checker(IntegerShader("uint"), RenderbufferFormat::R16I, mesh) .get(PixelFormat::RedInteger, PixelType::Short); + #if defined(MAGNUM_TARGET_GLES) && !defined(MAGNUM_TARGET_WEBGL) + CORRADE_EXPECT_FAIL_IF(Context::current().detectedDriver() & Context::DetectedDriver::SwiftShader, + "SwiftShader doesn't like integer buffers with anything else than (Unsigned)Int"); + #endif + MAGNUM_VERIFY_NO_GL_ERROR(); CORRADE_COMPARE(value, 16583); } @@ -1276,6 +1286,11 @@ void MeshGLTest::addVertexBufferIntWithUnsignedShort() { const auto value = Checker(IntegerShader("int"), RenderbufferFormat::R16UI, mesh) .get(PixelFormat::RedInteger, PixelType::UnsignedShort); + #if defined(MAGNUM_TARGET_GLES) && !defined(MAGNUM_TARGET_WEBGL) + CORRADE_EXPECT_FAIL_IF(Context::current().detectedDriver() & Context::DetectedDriver::SwiftShader, + "SwiftShader doesn't like integer buffers with anything else than (Unsigned)Int"); + #endif + MAGNUM_VERIFY_NO_GL_ERROR(); CORRADE_COMPARE(value, 16583); } @@ -1309,6 +1324,11 @@ void MeshGLTest::addVertexBufferIntWithShort() { const auto value = Checker(IntegerShader("int"), RenderbufferFormat::R16I, mesh) .get(PixelFormat::RedInteger, PixelType::Short); + #if defined(MAGNUM_TARGET_GLES) && !defined(MAGNUM_TARGET_WEBGL) + CORRADE_EXPECT_FAIL_IF(Context::current().detectedDriver() & Context::DetectedDriver::SwiftShader, + "SwiftShader doesn't like integer buffers with anything else than (Unsigned)Int"); + #endif + MAGNUM_VERIFY_NO_GL_ERROR(); CORRADE_COMPARE(value, -16583); }