[Cogl] Cogl/Clutter + Existing OpenGL Libraries
jeremy at emperorlinux.com
Thu Mar 22 13:33:04 PDT 2012
Hello all (I've cross-posted this to Clutter as well, just in case).
I'm trying to get Clutter/Cogl to function within an existing OpenGL
library, particularly OpenSceneGraph. I've been asking in the IRC
channels about this, and have gotten a lot of informative responses, but
unfortunately it's mostly overviews on how one "might" go about doing
it. This would probably be fine for someone with more experience, but
I'm actually looking for some example code (if possible), particularly
from anyone else who might have tackled the same problem.
Here's what I know so far:
1) Cogl has a gles2 branch that tries to address this issue somewhat.
However, it only works with GLES2 (and you cannot simply fire of OpenGL
drawing commands, you need to invoke them through a vtable). I cannot
verify if GLES2 is even supported on my laptop machine (with NVidia
hardware, which 90% of my users will be using), so I wasn't able to get
far with this at all.
2) OpenSceneGraph is perfectly fine with not ever setting up a window or
being aware of an existing context; it can be used entirely under the
assumption that these things have already been handled for it. In fact,
this is how OpenSceneGraph functions inside Qt/Gtk widgets, SDL, etc.
Again, there have been a few theoretical things mentioned on IRC by the
main developers (bpeel, ebassi, rib, etc.), but I figured I'd look for
some example code to help out. I understand traditional OpenGL (and even
using glX to some degree), but Cogl abstracts so much away it's a bit
beyond my current understanding trying to manipulate it in ways it
doesn't easily support.
More information about the Cogl