gem-0.84 again

umläute zmoelnig at iem.mhsg.ac.at
Mon Jul 24 17:51:55 CEST 2000


Mark Danks wrote:

> <snip - nvidia drivers>
> > headers, and indeed, Gem looks far more stable (especially when
> > destroying the Gem-window-context; this led to crashes on the
> > old hybrid mesa/open-GL GEM is used
> >
> 
>   This is good news.  I didn't think that I was doing anything wrong in the
> OpenGL context code...it is nice to know that it is probably just the
> driver.
> 
> <snip - GLenum stuff>
> 
>   I do not have any casts in my original Win32/IRIX sources.  What is the
> exact format that Linux wants? I will put that into the main source code.

that's exactly what i talked about (for no real reason, except to let
anybody know)
you (and i guess all those who have the dubious luck of using Win32,
including me) do not have the need of casting anything (concerned with
the GLenum);
all those boys and girls who are doing mesa stuff (and this is, as i
think, the bid deal of audio-interested linux-users that want to do
"some" graphic-stuff and not have to invest much in expensive cards)
will have to do a (enum GLenum) cast whenever a GLenum appears
again my example::
your original code      m_drawtype = GL_FILL;
mesa code               m_drawtype = (enum GLenum) GL_FILL;
now nvidia released their linux-driver which have real hardware support
of real openGL which has little to do with the weird world of mesaGL
therefore the correct code in the linux/nvidia-context would be again
                        m_drawtype = GL_FILL;
to save keyboard i only deleted the "enum", wich results in a redundant
cast
                        m_drawtype = (GLenum) GL_FILL;

hope this makes the problem clear :: how to write "good" code ?
maybe we should use precompiler directives like

#ifdef MESA
#define GLENUM_CAST (enum GLenum)
#else
#define GLENUM_CAST
#endif

m_drawtype = GLENUM_CAST GL_FILL;

or something
mfg.else.fsda
iohannes



More information about the Pd-list mailing list