indexunknown
Newbie

Posts: 11
|
 |
« on: January 30, 2010, 13:44:11 » |
|
I upgraded my HD 3650 to 10.1 drivers: (these are totally official ones, not any beta or anything) GL_VENDOR: ATI Technologies Inc. GL_RENDERER: ATI Radeon HD 3600 Series GL_VERSION: 3.2.9252 Compatibility Profile Context
and now with lwjgl 2.2.1 i get a lot of exception with basic GL11 and GL12 functions being not supported. for example:
java.lang.IllegalStateException: Function is not supported at org.lwjgl.BufferChecks.checkFunctionAddress(BufferChecks.java:64) at org.lwjgl.opengl.GL11.glLightModeli(GL11.java:1892) <-- basic stuff at Game.initGL(Game.java:136) or java.lang.IllegalStateException: Function is not supported at org.lwjgl.BufferChecks.checkFunctionAddress(BufferChecks.java:64) at org.lwjgl.opengl.GL11.glLightModel(GL11.java:1900) <-- what am i supposed to use instead of this one at Game.initGL(Game.java:151) or java.lang.IllegalStateException: Function is not supported at org.lwjgl.BufferChecks.checkFunctionAddress(BufferChecks.java:64) at org.lwjgl.opengl.GL11.glMatrixMode(GL11.java:1961) at Game.initGL(Game.java:163)
is this an april fools joke because on amd forum it seems there are lots of issues with programs that use opengl and these drivers are installed by everyone who do updates.
|
|
|
|
|
Logged
|
|
|
|
|
spasi
|
 |
« Reply #1 on: January 30, 2010, 14:57:43 » |
|
I can confirm this, latest AMD drivers are seriously broken. I can't create anything but a 3.2 core context (even though it says it's a Compatibility context), all deprecated functions are missing.
If I use no ContextAttribs or ContextAttribs with any version < 3.2, I get a 3.2 core context. If I use ContextAttribs with 3.2 and Compatibility profile, I get a 3.2 core context. If I use ContextAttribs with 3.2 and Core profile or no profile at all, I get an OpenGL error on context initialization.
A joke indeed.
|
|
|
|
|
Logged
|
|
|
|
|
|
|
elias4444
|
 |
« Reply #3 on: January 30, 2010, 16:34:51 » |
|
Ok, I've verified this with lwjgl 2.2.2. However, I ran one of my older games (not sure which version of lwjgl it's using - at least version 2), and it ran fine with the new ATI drivers.
|
|
|
|
|
Logged
|
|
|
|
|
elias4444
|
 |
« Reply #4 on: January 30, 2010, 20:08:55 » |
|
I went back through each version of LWJGL to version 2.1.0.
2.1.0 works just fine with the new ATI drivers. I'm not sure why there's this sudden incompatibility between the 2.2 series and the 10.1 ATI drivers, but there you go. I hope this helps in some way to figure out what the problem is (as it appears to be an LWJGL issue).
Let me know if there's anything else I can do to help.
|
|
|
|
|
Logged
|
|
|
|
|
Matzon
|
 |
« Reply #5 on: January 31, 2010, 00:16:34 » |
|
driver problem - probably related to ogl 3+
|
|
|
|
|
Logged
|
|
|
|
indexunknown
Newbie

Posts: 11
|
 |
« Reply #6 on: January 31, 2010, 00:33:18 » |
|
benchmark worked fine. don't know what's wrong , minecraft, runescape work also fine, maybe new lwjgl changed something.
|
|
|
|
|
Logged
|
|
|
|
|
spasi
|
 |
« Reply #7 on: January 31, 2010, 06:16:45 » |
|
I found out what the problem with LWJGL is, this ATI driver doesn't expose ARB_compatibility and I kinda assumed that it should exist in a 3.2 compatibility context. Working on a fix, will let you know when it's up.
|
|
|
|
|
Logged
|
|
|
|
|
kappa
|
 |
« Reply #8 on: January 31, 2010, 06:50:52 » |
|
sounds like a critical bug, worthy of a LWJGL 2.2.3 release 
|
|
|
|
|
Logged
|
|
|
|
|
spasi
|
 |
« Reply #9 on: January 31, 2010, 07:09:45 » |
|
Matzon, should I also remove support for non-direct buffers? We haven't had any different opinions so far ( http://lwjgl.org/forum/index.php/topic,3172.0.html), but I don't feel like making this decision alone. Not sure how many LWJGL users visit this forum, it's a non-trivial change and might break existing code.
|
|
|
|
|
Logged
|
|
|
|
|
spasi
|
 |
« Reply #10 on: January 31, 2010, 08:46:30 » |
|
Committed. The ATI fix works fine, a bunch of AMD extensions have been added, indirect buffer support has been removed. Grab a fresh build when it's up and let me know how it goes.
|
|
|
|
|
Logged
|
|
|
|
indexunknown
Newbie

Posts: 11
|
 |
« Reply #11 on: January 31, 2010, 10:32:09 » |
|
now with GL11.glLightModel(GL11.GL_LIGHT_MODEL_AMBIENT, FloatBuffer.wrap(new float[] { 0.1f, 0.1f, 0.1f, 1.0f })); i get java.lang.IllegalArgumentException: FloatBuffer is not direct at org.lwjgl.BufferChecks.checkDirect(BufferChecks.java:122) at org.lwjgl.BufferChecks.checkBuffer(BufferChecks.java:177) at org.lwjgl.opengl.GL11.glLightModel(GL11.java:1838)
i guess now have to construct the float buffers differently
|
|
|
|
|
Logged
|
|
|
|
|
elias4444
|
 |
« Reply #12 on: January 31, 2010, 11:11:15 » |
|
Yes, he mentioned that he removed support for non-direct buffers. But trust me, it's for the best. Just revamp your code to use direct buffers instead (and reuse them when possible, like in the case of setting your lightmodel).
|
|
|
|
|
Logged
|
|
|
|
|
Evil-Devil
|
 |
« Reply #13 on: February 01, 2010, 07:40:38 » |
|
Nice to see nondirect buffers gone. Never seen any use for them when dealing with heap data so I won't miss them ^^
|
|
|
|
|
Logged
|
|
|
|
|
elias4444
|
 |
« Reply #14 on: February 01, 2010, 07:47:41 » |
|
Just verified that the ATI driver problem is fixed in the nightly build. Thanks Spasi!!!
|
|
|
|
|
Logged
|
|
|
|
|