OGRE

slanning on 2009-10-05T07:09:39

I've recently worked a bit more on Perl bindings for OGRE. You might remember that I was working on this a couple years ago. I updated the bindings to minimally work with the Shoggoth (1.6) API (at least on Ubuntu). It still needs a lot of work.

My motivation is to make a sort of game framework. I think there are similar motivations for the recent revival of the SDL bindings. I recently added an example showing how to render Ogre into an SDL OpenGL context, at least on Linux (can be done in Windows too, but I didn't look at it yet). That allows you to write a normal SDL app, with keyboard/mouse input, sounds, and whatever else SDL does, but use Ogre to render 3-D graphics.

A couple years ago, I went to a talk by Guillaume Cottenceau on "the making of" Frozen Bubble at a Geneva.pm meeting. After that, I read a tutorial on "Developing games with Perl and SDL". I took several detours, but eventually got interested in Ogre instead of using SDL. The problem (or nice thing depending on how you look at it) is that Ogre is focussed on 3-D graphics and leaves you to do all the rest yourself. So I also made bindings for OIS, to get keyboard/mouse(/joystick/wiimote/etc.) input; a port of a simple GUI library, to let you make simple menus and GUI widgets; and a binding for OgreAL, which facilitates integrating OpenAL (sound/music) into 3-D scenes (so you have sound seeming to come from points in space).

In the back of my mind, I still would like to work on wrapping another GUI library, such as MyGUI or in my crazier moments CEGUI. I would like to automate more of the API-binding to make it easier to update for each release (have ExtUtils::XSpp in mind, for one thing, and also want to improve the use of GCC-XML) and to make the bindings more complete. I'd also like to get things compiling on Windows, especially after seeing how easily wxPerl compiled on Strawberry Perl this weekend.


ExtUtils::XSpp

tsee on 2009-10-05T17:07:15

One thing to remember about ExtUtils::XSpp is that it's still young. Not necessarily young in the sense of not being production ready (Wx.pm is built using it), but young in the sense of likely not being *complete*. We're open to any sort of constructive input.