[Gtkradiant] [Bug 812] New: ATI FireGL driver bug workaround

gtkradiant@zerowing.idsoftware.com gtkradiant@zerowing.idsoftware.com
Mon, 05 May 2003 19:58:52 -0500


http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=812

           Summary: ATI FireGL driver bug workaround
           Product: GtkRadiant
           Version: 1.2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: editor
        AssignedTo: ttimo@idsoftware.com
        ReportedBy: david@olofson.net


The ATI drivers for FireGL 8x00 and some other cards, have a bug that kicks in
whenever you cull one face of a polygon while using different rendering modes
for the faces. The result is that nothing but occasional pixels are rendered.
The bug seems to be in all FireGL 8x00 drivers released by ATI so far, for Win32
as well as Linux.

Attached is a patch that wraps glEnable(), glDisable(), glCullFace() and
glPolygonMode() in order to work around this bug. It should have no effect on
the rendering with correct drivers, but will make some extra calls to
glPolygonMode().

The patch isn't heavily tested (due to other completely unrelated problems), but
it Seems To Work Here(TM).