Hi there.
Firstly, thank you for a great binding - I have found that JOGL is very reliable and problems are few and far between!
In fact, the issue that I’m experiencing may not be to do with JOGL at all (I have suspicions that it’s a graphics driver bug) but I would like to air it here just in case.
On Mac OS X 10.5.2 with an NVidia 8800GT on an Intel-based Mac, I’m seeing intermittent freezes. When this happens, everything freezes (including other applications and the dock). It is still possible to move the mouse. It can last in the region of 2 seconds or more, the average probably being around 7. Sometimes it just gives up completely and the machine has to be reset. The problem occurs more frequently if there is more to render in the scene of the application.
I ran the OpenGL Profiler to dig a bit deeper and it appears to sometimes lock up when calling CGLFlushDrawable() at the end of each frame. Instead of taking 200 microseconds, it can suddenly take much longer (as above). For example, this is one of the freezes:
7260626.22 µs CGLFlushDrawable();
0.00 µs CGLUpdateContext(0x00936600);
Usually, it’s more like this:
207.32 µs CGLFlushDrawable();
0.00 µs CGLUpdateContext(0x00936600);
The same application runs smoothly on other machines (with different cards or different operating systems). My questions are simply as follows:
- Has anybody else experienced a similar issue?
- Is it possible that it’s a JOGL bug, or more likely to be a graphics driver/OS issue (even hardware I suppose)?
Through experimentation I have found that including a ‘glFlush’ after rendering each geometry in the scene appears to make the problem go away, but of course the frame-rate plummets so this is by no means a recommended workaround. However, it may help to determine the cause.
Many thanks folks.