Bad GL_RENDERER detection

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

Bad GL_RENDERER detection

APXEOLOG
Hi! When i'm running test.bat inside of the latest jogl release, it detects Generic GDI renderer
(this is full log http://pastebin.com/XQXMe3R9)
But if i running Version Applet via javaws, it detects my video chip properly
(this is a log from Version Applet console http://pastebin.com/stk3c5Ab)
Cannot understand what is the problem
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

gouessej
Administrator
Hi

Call GLProfile.getMaximum(true) or GLProfile.getMaxFixedFunc(true) to favor the hardware rasterizer.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

APXEOLOG
It doesn't help. If i understand the log properly, jogl-from-jar cannot even detect my video driver
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

philjord
Julien,
Looks like the same issue I hit on my Dell XPS 13 laptop with the test.bat

https://jogamp.org/bugzilla/show_bug.cgi?id=1278
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

APXEOLOG
In reply to this post by APXEOLOG
I got this error after installing fresh Intel drivers for integrated card when my NVidia video card died.
I feel like applet version and jar version have different paths for current driver. Can jar version somehow attemt to use nvidia driver (unavailiable now)?
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

gouessej
Administrator
In reply to this post by APXEOLOG
APXEOLOG wrote
It doesn't help. If i understand the log properly, jogl-from-jar cannot even detect my video driver
phil is probably right but it would help if you could tell me whether you tested my suggestion before claiming that it doesn't help, what do you mean exactly? JOGL can pick a different GL renderer depending on the capabilities that you request, that's why I suggested to call GLProfile.getMaxFixedFunc(true). For example, if you request a 32-bit depth buffer under Windows, JOGL will possibly pick the GDI renderer.

Does your machine use Optimus? There is a risk that your computer uses a different GPU but JOGL has no control on that and this kind of problem could happen in pure C OpenGL.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

APXEOLOG
I've tried GLProfile.getMaximum(true) and GLProfile.getMaxFixedFunc(true) they both have no effect (same renderer as GLProfile.getDefault())
I don't use Optimus. I have single video card now. My current OpenGL is detected perfectly but other (non-jogl) applications, for example by OpenGL Caps. And it is detected by any jogl application launched via WebStart (jnlp). The last part is really strange, i cannot understand why javaws and java have different OpenGL detection...
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

gouessej
Administrator
Please call GLCapabilities.setDepthBits(24) and GLProfile.getMaxFixedFunc(true). I'll look at your logs once again.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

gouessej
Administrator
In reply to this post by APXEOLOG
Please call GLProfile.getDefault(new WindowsGraphicsDevice(0)), it should initialize the profile exactly like in an applet.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

APXEOLOG
I use this code:

GLProfile prof = GLProfile.getDefault(new WindowsGraphicsDevice(0));
GLCapabilities cap = new GLCapabilities(prof);
cap.setDepthBits(24);

Didn't help. http://pastebin.com/pf6WMN6E

Ok, the only difference i've found between jnlp and jar version is that in jnlp version libraries are loaded via JNLPClassLoader, while in jar version NativeLibrary used? Can JNLPClassLoader have more access or find more/better libs then NativeLibrary?
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

gouessej
Administrator
Thank you for the logs. In my humble opinion, the culprit is really the graphics device. I'll see if I have some similar hardware, I need to debug JOGL on it to reproduce this bug.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

gouessej
Administrator
In reply to this post by APXEOLOG
Please can you run VersionApplet as an application on your machine? I'd like to know how it behaves when it doesn't use Java Webstart.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

APXEOLOG
I've launched it as :
java -Djogl.debug=true -cp "jogl-all.jar;gluegen-rt.jar" jogamp.opengl.awt.VersionApplet
Got same problem: http://pastebin.com/T54RpMA5
Reply | Threaded
Open this post in threaded view
|

Re: Bad GL_RENDERER detection

philjord
I've updated my thoughts on this here:
http://forum.jogamp.org/Java-3D-crash-or-flickering-tp4035074p4037031.html

There are 2 solutions if you have the same problem as described in the post