Nodraw=true property

Started by radvani, March 23, 2006, 23:57:56

Previous topic - Next topic

radvani

Hi everyone, quick question:

I'm migrating from JOGL, and when using JOGL it was essential on Windows to specify the JVM property:

<property name="sun.java2d.noddraw" value="true"/>

Does LWJGL share this requirement? If not, out of curiosity, why does LWJGL not have this problem?

Thanks!
Raj

Matzon

sorry for sounding stupid, but why was that property required to be set ?

It isn't something we use with LWJGL

radvani

You know, I actually have no idea. I'll quote the JOGL documentation:

For correct operation, it is necessary" to specify the system property -Dsun.java2d.noddraw=true when running JOGL applications on Windows; this system property disables the use of DirectDraw by Java2D. There are driver-level incompatibilities between DirectDraw and OpenGL which manifest themselves as application crashes, poor performance, bad flickering, and other artifacts. This poor behavior may exhibit itself when OpenGL and DirectDraw are simply used in the same application, not even just in the same window, so disabling Java2D's DirectDraw pipeline and forcing it to use its GDI pipeline is the only way to work around these issues.

Since the incompatibilities are supposed to be "driver-level" I thought LWJGL might have the same requirement -- but I guess not! It could have to do, then, with JOGL's enmeshment with Java2D.

Raj

Fool Running

QuoteFor correct operation, it is necessary" to specify the system property -Dsun.java2d.noddraw=true when running JOGL applications on Windows; this system property disables the use of DirectDraw by Java2D. There are driver-level incompatibilities between DirectDraw and OpenGL which manifest themselves as application crashes, poor performance, bad flickering, and other artifacts. This poor behavior may exhibit itself when OpenGL and DirectDraw are simply used in the same application, not even just in the same window, so disabling Java2D's DirectDraw pipeline and forcing it to use its GDI pipeline is the only way to work around these issues.
Interesting... I've never heard of that before.
Programmers will, one day, rule the world... and the world won't notice until its too late.Just testing the marquee option ;D