to my knowledge all matrix in OpenGL should be set identity from the start. so this look like a bug in the driver. as a workaround you can try set your own uniform matrix.
It's strange that the behaviors are different on Mobility Radeon HD4570 and Desktop HD 4850, we need to verify the problem first.
It's better to send your program to me by email@example.com. And please tell me which driver you are using now.
one possible idea: were you running the same version of opengl in each case ?
(version number and compatibility/core) ?
Thank you for the reply.
Checking the available log files + test results I could collect the following pieces of information:
Tested cards resulting correct rendering:
Mobility Radeon X1100 Series, Driver version: 8.283.0.0, Driver date: 2006.08.08 (limited rendering, 1 light only, shaders run in software)
Mobility Radeon X1400 Series, sorry, the machine is not available at the moment, so I cannot give the driver version
Mobility Radeon HD4570, OpenGL driver version: 188.8.131.5287, querying from OpenGL: "Version: 2.1.8787"
On the following cards the above mentioned multiplications result in 0, 0 texture coordinates:
(desktop) Radeon HD4850, Catalyst 9.12, querying from OpenGL: "Version: 3.2.9232", also Catalyst 10.1 was tested
(desktop) Radeon HD4870, Catalyst 10.1, querying from OpenGL: "Version: 3.2.9252 Compatibility Profile Context"
(desktop) Radeon HD5570, using Catalyst 10.5 and 10.8
Since the demo package is around 50 MB large I would rather give you a link to the zip file:
You can find the shader in question in the following folder:
the name is 20_bumpandlight.vert
Thank you and best regards,
Zoltán / Wilczek
The problem exists in Cat10.6 but doesn't in Cat10.9 in my local machine. As you also tried it on 10.8 and found the problem still exists. So I guess that it should be fixed in Cat10.9.
I can confirm that my program runs fine using Catalyst 10.9 (tested on HD3850). Thank you for the help.