Hi!
I have a question concerning glsl (it's not really specific to lwjgl, but since I develop with it I'll ask it here).
We are developing a 2D platform/adventure game and we are soon to enter testing period. One of my main objective when I started coding was that the game could run on a wide range of spec and os (that's why I use java and lwjgl!).
I am testing the builds of the game with a NVIDIA GT540M (OGL and GLSL 4.40) the game run smooth a 300fps. Now, to test for lower spec I use my Intel HD Graphics 3000, the latest driver proposed by intel has OGL 3.1.0 and GLSL 1.40, with the right shader version the game run nicely at 140fps stable.
I had a friend to test a build with an AMD (I think 1 or 2 years old) and the shaders were not working because I was using too old version (and also maybe not too careful on some part of the code). I did some research and found that some AMD gpu doesn't support older version of glsl while NVIDIA was more flexible. So I upgraded and modified my shaders.
My problem is that for instance if I use shader #version 440 core in my code it will not run on many integrated gpu (I assume) while it actually could.
I use VAO and VBO for rendering, I use the shaders for light map, some refraction and distortion of the water as well as few ambient light, nothing too fancy really (that requires latest glsl version at least).
So knowing all of that, what version of glsl should I use so it will run on a wide range of spec?