shader extensions etc.

Started by
4 comments, last by rewolfer 15 years, 5 months ago
hey... so i have used shaders before in linux, but never really paid much attention to the extension loading etc, and support on different computers. Today i tried writing a shader in windows. I'm using SDL for windowing, and glew for extension handling... So on my PC it supports GL_VERSION_2_1 and NV_vertex_program3 etc. very nice.... but on my laptop only GL_VERSION_1_5 is supported. the laptop has a Mobility Radeon x700, which i thought would support 2.0. Anyways because it only supports 1.5, shader functions aren't really available unless I use ARB ext's like CreateShaderObjectARB etc. My question is this: on my pc, would it make any difference if i used glCreateShader or glCreateShaderObjectARB (and other function pairs like this)? How do people usually write good portable opengl apps with regard to how version support limits extensions? Because i will just go with the ARB functions now so that it'll work on my pc and laptop, if there is no difference.
Advertisement
Everything that is Radeon 9500 and above supports 2.0 or 2.1
The entire X series also and that includes the mobility chipset.
You can use the ARB functions but they are frozen to GLSL 1.00, although I haven't tested them to see they accept GLSL 1.10 and 1.20 code.

Quote:How do people usually write good portable opengl apps with regard to how version support limits extensions?


You either use extensions and extensions alone or you check to see what the GL version is. Of course, there are things that aren't core features like S3 compression, anisotropic filtering, swap control and many others.
Sig: http://glhlib.sourceforge.net
an open source GLU replacement library. Much more modern than GLU.
float matrix[16], inverse_matrix[16];
glhLoadIdentityf2(matrix);
glhTranslatef2(matrix, 0.0, 0.0, 5.0);
glhRotateAboutXf2(matrix, angleInRadians);
glhScalef2(matrix, 1.0, 1.0, -1.0);
glhQuickInvertMatrixf2(matrix, inverse_matrix);
glUniformMatrix4fv(uniformLocation1, 1, FALSE, matrix);
glUniformMatrix4fv(uniformLocation2, 1, FALSE, inverse_matrix);
thanks very much..

ya something's not working correctly... seriously need to get to the opengl 2.0 functionality... must be a driver prob, but i've downloaded the latest from the Acer (have a Acer Travelmate 4101wmi) but to no avail.
Currently, with the ARB extensions, it "runs" my shader, but its extremely slow, so im assuming its resorted to SW rendering seeing the only thing the shader does is gl_FragColor = vec4(1.0, .0, .0, 1.0);

not sure what i'll do to fix this, but i'll just have to keep researching and fiddling. thanks for the help man!
drivers from acer might be lagging
Bring more Pain
Have you tried to contact acer for support?
Sig: http://glhlib.sourceforge.net
an open source GLU replacement library. Much more modern than GLU.
float matrix[16], inverse_matrix[16];
glhLoadIdentityf2(matrix);
glhTranslatef2(matrix, 0.0, 0.0, 5.0);
glhRotateAboutXf2(matrix, angleInRadians);
glhScalef2(matrix, 1.0, 1.0, -1.0);
glhQuickInvertMatrixf2(matrix, inverse_matrix);
glUniformMatrix4fv(uniformLocation1, 1, FALSE, matrix);
glUniformMatrix4fv(uniformLocation2, 1, FALSE, inverse_matrix);
yea, just waiting to hear back from them

thanks guys

This topic is closed to new replies.

Advertisement