Re: GTK + Clutter next step(s)
- From: Benjamin Otte <otte gnome org>
- To: Peter Clifton <pcjc2 cam ac uk>
- Cc: clutter-devel-list clutter-project org, geda-dev <geda-dev seul org>, gtk-devel-list <gtk-devel-list gnome org>
- Subject: Re: GTK + Clutter next step(s)
- Date: Sat, 29 Oct 2011 17:23:20 +0200
On Sat, Oct 29, 2011 at 2:03 PM, Peter Clifton <pcjc2 cam ac uk> wrote:
> The PCB design CAD software I work (in the gEDA suite) on has this
> requirement, and currently uses GtkGlExt with GTK 2.0. Migrating to GTK
> 3.0 is of course not possible at the moment, as GtkGlExt is not ported
> to GTK 3.0, and a lot of the underlying concepts (e.g. colourmaps and
> visuals) which GL uses have been removed from GDK now.
Colormaps have been removed, but visuals are still present. But yeah,
you shouldn't use GDK for creating the window that you render to with
OpenGL in a GTK 3 world, but do it with raw X. And that requires
enough knowledge about X and GLX to get going.
Which is what I'd want to avoid by providing hooks somewhere inside
GDK that can be used by applications that want to use OpenGL to create
a context for them. And that's where Cogl comes in. :)
>> I definitely don't want to make it easy.
> Oh dear.. I hope that was just an unfortunate turn of phrase, but the
> way I read this is "GTK developer(s) think they know better than me, and
> want to make my life difficult".
> It really sounds like you intend to ensure that it is hard to do what we
> need here, and that attitude scares me coming from a developer of my
> favourite tool-kit.
"Easy things should be easy, and hard things should be possible."
-- Larry Wall
That's the context for the quote. As a library developer, I always
have to find a balance between making things easy enough but not too
easy. Because if something is too easy, people will not use the other
solutions, even when they are the correct ones.
To give an example for that:
mysql_fetch_array("select * from table where name = '$name'") - In
this case constructing SQL statements as strings is too easy: everyone
does it and you get SQL injections on every website.
So I want to have OpenGL usage in the "possible" realm, but I want to
keep it away from the "easy" realm, so that nobody goes "oh, that is
easy, I'll just write my widget using OpenGL", because that would be
wrong. You want to use GTK/Clutter mechanisms there.
] [Thread Prev