Re: OpenGL support in GTK+

On Thu, 2003-09-18 at 10:51, Sven Neumann wrote:
> Hi,
> Jeff Franks <jcf tpg com au> writes:
> > It shouldn't be too hard to move GtkGLExt into GTK+.
> What advantages would such a move have over keeping it as a separate
> package?  Is there anything you can only do when GtkGLExt becomes
> integrated into GTK+? Unless that is the case, it does IMO not belong
> into GTK+ since it will be perceived as unnecessary bloat by most
> people.

Why do I think that OpenGL integration with GTK+ is a good thing?
OpenGL is important in a lot of possible applications of GTK+

 - Scientific applications
 - Use in universities
 - Games (though less so, since games often want OpenGL-based
   controls inside the content area.)

By making this integration "official", we get advantages that:
 - It's clear what to use to use OpenGL with GTK+
 - There are less dependency problems. Multiple competing
   OpenGL-for-GTK+ libraries could cause problems if, say,
   a library wanted to use OpenGL.
 - We can make sure that the API is something that we are happy with

There are several levels of integration that could be discussed here:

 - Make GDK actually link to OpenGL, include a "GtkGLArea" in 
   libgtk proper. 

   There are two problems with this:
    - First, ever GTK+ application gets a dependency on the
      libGL shared library. The overhead of that is noticeable.
      (Qt does always link to libGL...)

    - OpenGL becomes a build dependency of GTK+. While it would be
      an optional build depenency, that means that if you first 
      build GTK+, then build GL, you have to rebuild GTK+ again.

 - Include another library in the gtk+ tarball. Has the same
   build dependency problem. Doesn't have the problem with 
   making all apps link to libGL.

   Note that there is a libglade integration problem with this,
   as Naofumi points out. Either libglade has to depend on this
   library (pulling in libGL) or this library has to depend
   on libglade (note possible if it's part of GTK+.)

   If we do go ahead and add libglade-like capabilities to GTK+,
   as has been discussed, then that problem goes away. So whether
   this is a problem depends on how things are scheduled.

 - Bless an OpenGL library as official (put it on
   Has similar problems with libglade integration, since we 
   presumably don't want to bless libglade as official with it's
   current dependency on libxml. (Nothing wrong with libxml,
   but it's large.)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]