LWJGL applet problem on some cards

Started by jhelp, February 01, 2007, 16:55:52

Previous topic - Next topic

jhelp

Hello,
It seems that my last message not sent to the forum (I couldn't find it), so I rewrite it
I have some trouble on using LWJGL.
My applet on LWJGL not work with some graphics card. Some ATI, like ATI mobilty X1400 and some other X...
It have the same problem with the Mobiel Intel(R) 915GM/GMS,910GML Express Chipset Family
And on a computer, I have the problem only on Internet Explorer 7 and not on Firefox.
The error is always the same :
Couldn't create a valid pixel format.
Do you now a solution without to update the graqhic cards driver ?
Thanks,
JHelp

princec

You're sure that there are actually OpenGL drivers installed?

Cas :)

cornholio

sounds odd. my notebook has a Mobile Intel(R) 915GM and LWJGL works just fine
on winXP and ubuntu linux. of course the hardware can't do multisampling, so be
sure you have disabled it when specifying a pixelformat...

Fool Running

What pixel format are you trying to use?
Programmers will, one day, rule the world... and the world won't notice until its too late.Just testing the marquee option ;D

jhelp

Thanks for your answer,
I am sure that the computers have OpenGL, because my friends have games work with OpenGL.
For the Pixel format, first time i try the (8,24,0,0), and I init the canvas.
On the init I test if the multisample is possible. If and only if the extention ARB_Multisample exists I kill the Canvas and I done an other pixel format (8,24,0,4)
But the problem is not here, beacause, it appends on the first creation of the Canvas ie (8, 24, 0, 0) to be sure I have put some System.out.println. I have tried also the default PixelFormat, but the result is the same.
If some one have an idea to try,
Thanks in advance,
JHelp

radvani

I too have experienced this problem on 4 or 5 different computer configurations. I get the "Cannot find a valid pixel format error" but, interestingly enough, ONLY when using Applets in IE 6 or IE 7. This problem never occurs with Firefox. The JOGL applets, however, DO work on these same computers in IE 6 and IE 7.

This occurs regardless of what PixelFormat I request: I tried all combinations (requesting nothing, requesting different BPPs, different depth values, etc.).

The computers where this fails tend to be using Intel GMA video cards. Strangely, though, this doesn't occur with ALL Intel GMA cards: I have on Thinkpad where the error does occur, and one Dell where it does not -- and both of these machines have the same video card (but different driver!).

I have not tried updating the driver to see if that would fix this problem, because I don't think that's a real solution: If the JOGL applets work with this driver, then the LWJGL applets should be able to work. I'm going to try to explore this problem further this week by peeking into context.c and looking for where exactly the pixel format is failing. Any advice?

Matzon

it sounds like the jogl applets are falling back to software mode?
you might want to print out the renderer of those systems:
glGetString:
GL_VENDOR
GL_RENDERER
GL_VERSION
GL_EXTENSIONS

do you have access to these systems so that we may debug something if need be ?

on those systems, where applets fail - do they work fine with an ordinary LWJGL application?

radvani

Hi Matzon,

Thanks for the help! I do have access to one the systems where this bug is occurring (the rest of the systems belonged to friends, etc.).

I'll print out the gl_vendor,renderer,version, etc and post it today. I haven't tried an ordinary LWJGL application yet with the systems, but I assume standalone applications will work because applets in Firefox are working beautifully (with hardware rendering). It's only the IE applets that fail to find a pixel format. I'll be working most of the day today on debugging this problem, and I'll be on IRC this evening.

Matzon

k, I'll try to be online - but depending on timezone that may or may not happen

radvani

After some more testing it turns out that this problem also occurs with some ATI cards using Internet Explorer (but again, Firefox works fine). 30-40% of the laptop computers I've tested exhibit this problem with IE.

For what it's worth, if IE is open and you run the applet in Firefox, it works in Firefox. So IE being open itself doesn't prevent it from working, just running it in IE. Very strange!

radvani

OK so it turns out the problem is most likely due to an address space conflict between Internet Explorer, Intel video drivers, and the JVM.  As far as I know there is no way to fix this within LWJGL, it may be possible to implement a workaround in application code.

However, there is a more pressing problem that has arisen, and one that should be fixable within LWJGL. Namely, the computer I'm on right now (Thinkpad X60 Tablet with Intel 945GM graphics) can't find a valid pixel format in either Firefox or IE. This computer DOES work with hardware acceleration (verified) in the JOGL test applet. I'm going to test this computer out with standalone (non-applet) LWJGL to see if that works, and I'll post the results here.

Matzon

ok, thanks for identifying this. If you dont mind telling; how did you arrive at that conclusion? How did you determine that this was the cause ?

radvani

About the previous problem, I corresponded with Ken Russel at Sun and his research has revealed that it's an address space conflict, with the majority of the blame falling on the Intel drivers. However, Sun plans on fixing the problem in the next release of the Java Plugin. By changing the way in which the Plugin itself is launched -- perhaps by removing it into its own process (out of the browser) -- the conflict can be resolved. With such a solution, Applets will have all the stability of Java Web Start.

Matzon


radvani

Just to close this off, the other error I got (with the Intel 945) was my own fault (requesting a too-specific PixelFormat). LWJGL is working great now!