Swing components around the GLCanvas flicker.

Started by Dominic2, January 23, 2009, 04:51:12 PM

Previous topic - Next topic

Dominic2

Hi,

I have a problem that I have seen only on a laptop with a NVIDIA Quadro FX770M (most recent graphic drivers) so far. We have an application windows with a GLCanvas in the center and other swing components around it. For a reason unknown to me, the swing components around the GLCanvas flicker. They don't appear and disappear, instead they keep switching (visually only) between their initial state and their current state very fast. The only work around that we have found so far for this is to keep the NVIDIA Control panel window open while the application is running. For some reason, this fixes the problem, but it's not a really acceptable solution...

I use the OpenGL renderer only. I use the following code to initialise the OpenGL renderer and then I disable the software renderer :

frameBuffer.enableGLCanvasRenderer(IRenderer.MODE_OPENGL);

When rendering, I use the following code :

        frameBuffer.clear();
        world.renderScene(frameBuffer);
        world.draw(frameBuffer);
        frameBuffer.update();
        frameBuffer.display(graphics);
        canvas.repaint();


Does anybody knows a solution to this problem please ? Thank you very much.

EgonOlsen

And it works fine on all other machines? Do you have a simple test case, that shows the problem?

EgonOlsen


Dominic2

Yes, it work fine on all other machines. I suspect some weirdness in the laptop driver to cause this... The Java version on the laptop is 1.6 r07. I'm sorry about the test case, but I doubt I will have time to do it. If we don't find a solution without it, I may be able to do it, but I can't make any promises about that.

Thank you.

EgonOlsen

#4
Ok, if it's 07 and not 10 or above, it's not using the new D3D-pipeline for Swing. So that can't cause the problem...
Are you by any chance using that freaky desktop-enhancement stuff that NVidia offers (i can't remember the exact name, but somewhere in the driver's properties you can enable some fancy desktop stuff)? It caused all kinds of weird problems once i tested it.

Edit: I think that this a driver issue and as such not under jPCT's or LWJGL's control. However, you may give this setting a try: http://www.jpct.net/doc/com/threed/jpct/Config.html#glForceFinish. I don't think that it will change anything, but just to be sure...

Dominic2

If by "freaky desktop-enhancement stuff" you mean the nView Desktop Manager, we just tried turning it off, but it didn't help. I haven't tried glForceFinish yet.

Thank you.

EgonOlsen

Quote from: Dominic2 on January 28, 2009, 04:44:02 PM
If by "freaky desktop-enhancement stuff" you mean the nView Desktop Manager,...
Exactly that one... ;D I have a 8500 PCI (yes, PCI...not PCIe) here for testing purposes and once i enable that stuff, every single 3d application bombs out with "out of memory", because the card can't access the system memory and has to live with the 256mb that are onboard.