OpenGL crash?

Hi,

  I have a running application (very simple and very short) in a machine with a GForce on board video card. When I try to run this application -or any other- in another machine I get:



org.lwjgl.opengl.OpenGLException: Invalid enum (1280)
        at org.lwjgl.opengl.Util.checkGLError(Util.java:56)
        at org.lwjgl.opengl.Display.swapBuffers(Display.java:567)
        at org.lwjgl.opengl.Display.update(Display.java:583)
        at com.jme.renderer.lwjgl.LWJGLRenderer.displayBackBuffer(Unknown Source)
        at com.jme.app.BaseGame.start(Unknown Source)
        at HelloPasillo.main(HelloPasillo.java:38)

:?

  I saw that someone's had the same mistake and posted it here, but he seems to have solved it updating the video card drivers. I have a VIA/S3G UniChrome Pro IGP (P4M800) here.
  Thanks in advance!!

Unfortunatly VIA's (windows) drivers have very very bad OpenGL support. You should try to find the latests drivers for it…



edit: http://www.viaarena.com/ is usually a good place to find Via drivers.

The problem is those crappy drivers often report OpenGL capabilities they don't support, or implement them incorrectly. It might be possible to get it to work with jME, but the problem usually isn't jME itself.



Since none of the devs have such a chipset, you'll have to find yourself which OpenGL method causes this error, you can do that by putting the  org.lwjgl.opengl.Util.checkGLError() before and after it.



Do any of the jME examples themselves work?


Doesn't jPCT use a custom software fallback?

llama said:

Since none of the devs have such a chipset, you'll have to find yourself which OpenGL method causes this error, you can do that by putting the  org.lwjgl.opengl.Util.checkGLError() before and after it.


That would be, downloading the sources and modifing them?


Do any of the jME examples themselves work?


The webstarts from the jME page don't. None of them.

If none of them work, your card or drivers may not be compatible with jME.  One last thing you might try is running the lwjgl examples over here:  http://lwjgl.org/demos.php



Let us know if any of these work.

luispablo said:

llama said:

Since none of the devs have such a chipset, you'll have to find yourself which OpenGL method causes this error, you can do that by putting the

The LWJGL demos work fine. All of them. So I'd say that the card supports OpenGL.



Changing the video card is not the solution, as my problem is that I have to be sure that when my client gives the game I'm developing to one of his customers, it should run. In the PC in which I'm developing works just fine, but in this other machine it doesn't.

On to the debugging then…!

Good luck and let us know if you need any help…

I know these things are very frustrating, but please understand that none of us have this chip set to test on, so unless you can help us narrow down the problem, we could only take shots in the dark at best.

Considering it happens in all the tests, maybe it's in the initialization somewhere…



It seems this chipset seems to claim it's OpenGL 1.2 (searched online a bit)… I have an nVidia TNT2 that's OpenGL 1.1 (with some extentions though) and jME runs fine on that. Invalid enum is often due to using a constant value that the driver doesn't recognize, so you'd have to find out which one that is.