The change back in January or so to no longer give each window its own x window seems to have caused an upheaval in the opengl world. The first app to report a problem was Lightwave 3D: http://bugs.winehq.org/show_bug.cgi?id=2398 followed by http://bugs.winehq.org/show_bug.cgi?id=2908 WeatherScope (free) http://bugs.winehq.org/show_bug.cgi?id=3083 Google Earth (free) http://bugs.winehq.org/show_bug.cgi?id=3400 Quake3 Radiant http://bugs.winehq.org/show_bug.cgi?id=3583 Moray 3.5 (free) I've taken the liberty of marking the latter four bugs as duplicates of 2398, reopening 2398, and targeting it to be fixed for Wine 1.0.
Willie Sippel's comment, http://bugs.winehq.org/show_bug.cgi?id=2398#c41, seems to point the way to a fix; he suggests using the new GL_EXT_framebuffer_object OpenGL extension. I checked around a bit, and it appears to be at least partly supported by the latest NVidia and ATI drivers. Sun's starting to use it in Java, too; see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6255507
A workaround is probably also possible without that OpenGL extension, but it would probably run slower.
I'm tempted to say skip the workaround, at least for the first pass, and just implement the real fix using the opengl extension. As Sippel said, people who use apps like Lightwave (and maybe Quake3 Radiant :-) tend to have the latest 3d hardware and drivers anyway.
What do other people think? Has anybody started looking at fixing this yet?
Thanks, Dan