Reputation: 532
for a class I have to use Java, jogl and lwjgl. We were given some code and now i am trying to run this code, however i get the error:
" GLSL 3.30 is not supported. Supported versions are: 1.00 ES, 1.10, and 1.20"
And i am unable to determine what shaders are supported or if it is a driver problem or a hardware shortcomming.
Currently I am on debian testing/unstable and use the current xorg-video-ati driver package.
Can anyone tell me how to identify which shaders (if at all) are supported?
Upvotes: 0
Views: 2699
Reputation: 162327
" GLSL 3.30 is not supported. Supported versions are: 1.00 ES, 1.10, and 1.20" (...) Currently I am on debian testing/unstable and use the current xorg-video-ati driver package.
Well, that's no big surprise as the DRI/Mesa xorg-video-ati aka radeon drivers support only OpenGL-2.1 with extensions so far. OpenGL-3 is still in the experimental stage of DRI/Mesa development.
You need to install AMD/ATI's propriatary fglrx/Catalyst drivers to get support for OpenGL-3 and above (of course this still depends on your hardware). Luckily the quality of fglrx improved dramatically and my last exhaustive tests (with a Radeon HD6570) they showed great stability (they survived even all the torture tests, like obscure context and FB settings). The only real bug I found and reported was that glXSwapBuffers would never block on a indirect rendering context no matter how V-sync and swap intervall were set.
Upvotes: 4
Reputation: 1516
If you look in the GLSL files or the string being loaded as a shader, there should be a line:
#version 330
This means version 3.3. You can try changing that to:
#version 120
(Version 1.2)
There is no guarantee it will work but if the shaders are simple you might get away with it.
Upvotes: 0
Reputation: 474436
GLSL 3.30 requires OpenGL 3.3. It would appear that either your hardware can't run GL 3.x or you haven't updated your drivers recently enough.
Upvotes: 2