He Noeska,

Cool to see that you are getting into OpenGL 3.x. I have been working with it for a few months now. I spotted two errors in your program.

First check the glGetAttribLocation defenition in the dgl header. It takes a string while it should take a PGLChar. Then these lines will return good indices:

// http://www.opengl.org/sdk/docs/man/x...ibLocation.xml
g_vertexLocation := glslsimpleprog.GetAttribLocation('vertex');

// http://www.opengl.org/sdk/docs/man/x...ibLocation.xml
g_normalLocation := glslsimpleprog.GetAttribLocation('normal');

Second look into vertex array objects. These are required to when using VBO`s in OGL 3.x. You seem to be using them in your first tutorial.
http://www.opengl.org/wiki/Vertex_Array_Objects

The examples you are using arent proper OGL 3.x. They might work on nvidia because they usually permit more errors but these demo`s wont work on ati.

Also I see you are using OGL 3.2. Make sure when using ATI you use the latest catalyst 9.12 drivers. These is the first version that supports 3.2 properly.

If you still have problems pm me. I can send you the code of my new framework that works on ati and nvidia correctly.

Regards,

Luuk