Browse Source

Define-out precision qualifiers in test shaders for GLSL 1.20.

Causes the errors to abort on AMD cards.
pull/107/head
Vladimír Vondruš 11 years ago
parent
commit
fef46953ec
  1. 4
      src/Magnum/Test/AbstractShaderProgramGLTestFiles/MyShader.frag
  2. 4
      src/Magnum/Test/AbstractShaderProgramGLTestFiles/MyShader.vert
  3. 13
      src/Magnum/Test/MeshGLTest.cpp
  4. 3
      src/Magnum/Test/PrimitiveQueryGLTest.cpp
  5. 3
      src/Magnum/Test/SampleQueryGLTest.cpp

4
src/Magnum/Test/AbstractShaderProgramGLTestFiles/MyShader.frag

@ -1,3 +1,7 @@
#if !defined(GL_ES) && __VERSION__ == 120
#define lowp
#endif
uniform lowp float multiplier;
uniform lowp vec4 color;
uniform lowp vec4 additions[3];

4
src/Magnum/Test/AbstractShaderProgramGLTestFiles/MyShader.vert

@ -1,3 +1,7 @@
#if !defined(GL_ES) && __VERSION__ == 120
#define mediump
#endif
attribute mediump vec4 position;
uniform mediump mat4 matrix;

13
src/Magnum/Test/MeshGLTest.cpp

@ -396,6 +396,9 @@ FloatShader::FloatShader(const std::string& type, const std::string& conversion)
vert.addSource(
#if !defined(MAGNUM_TARGET_GLES) || defined(MAGNUM_TARGET_GLES2)
"#if !defined(GL_ES) && __VERSION__ == 120\n"
"#define mediump\n"
"#endif\n"
"attribute mediump " + type + " value;\n"
"varying mediump " + type + " valueInterpolated;\n"
#else
@ -408,7 +411,10 @@ FloatShader::FloatShader(const std::string& type, const std::string& conversion)
"}\n");
#if !defined(MAGNUM_TARGET_GLES) || defined(MAGNUM_TARGET_GLES2)
frag.addSource("varying mediump " + type + " valueInterpolated;\n"
frag.addSource("#if !defined(GL_ES) && __VERSION__ == 120\n"
"#define mediump\n"
"#endif\n"
"varying mediump " + type + " valueInterpolated;\n"
"void main() { gl_FragColor = " + conversion + "; }\n");
#else
frag.addSource("in mediump " + type + " valueInterpolated;\n"
@ -1141,7 +1147,10 @@ MultipleShader::MultipleShader() {
Shader frag(Version::GLES200, Shader::Type::Fragment);
#endif
vert.addSource("attribute mediump vec4 position;\n"
vert.addSource("#if !defined(GL_ES) && __VERSION__ == 120\n"
"#define mediump\n"
"#endif\n"
"attribute mediump vec4 position;\n"
"attribute mediump vec3 normal;\n"
"attribute mediump vec2 textureCoordinates;\n"
"varying mediump vec4 valueInterpolated;\n"

3
src/Magnum/Test/PrimitiveQueryGLTest.cpp

@ -102,6 +102,9 @@ void PrimitiveQueryGLTest::primitivesGenerated() {
Shader vert(Version::GL210, Shader::Type::Vertex);
CORRADE_INTERNAL_ASSERT_OUTPUT(vert.addSource(
"#if !defined(GL_ES) && __VERSION__ == 120\n"
"#define lowp\n"
"#endif\n"
"attribute lowp vec4 position;\n"
"void main() {\n"
" gl_Position = position;\n"

3
src/Magnum/Test/SampleQueryGLTest.cpp

@ -119,6 +119,9 @@ MyShader::MyShader() {
#endif
vert.addSource(
"#if !defined(GL_ES) && __VERSION__ == 120\n"
"#define lowp\n"
"#endif\n"
"attribute lowp vec4 position;\n"
"void main() {\n"
" gl_Position = position;\n"

Loading…
Cancel
Save