Non-Ogre-Linked Libraries


29-06-2007 03:45:32

My question is pretty straightforward.

I've been using python-ogre for some time now and I was wondering why libraries such as openAL and OIS require python-ogre to be imported before using. I assumed these would be unique python-binded libraries that had no dependency on Ogre (just provided for ease of use), but if I understand correctly it would seem that they are actually just python binded forms of the ogre linked counterparts. This seems a bit odd in my mind as offering separate python hookups to these libraries would give more functionality if you were to want to be able to swap modules in your development engine. In such a case, your 3D rendering module might be swapped for another library aside from Ogre. Currently, since these libraries are linked in such a way to Python-Ogre (unless I'm completely misunderstanding) they cannot be used in any case without the python-ogre files imported.

The only reason I'm actually making note of this is because I've yet to find separate standalone OpenAL or OIS python bindings. I've come across pyOpenAL, but only for versions less than 2.3. I contacted the creator, but sadly he doesn't have the files any longer for his 2.4 binary/source. Additionally, I do remember that the previous caretaker of PyOgre had a standalone pyOIS binding, but the link has long since been void that was provided on these forums.

Is there any chance of the Python-Ogre hookups for Newton, OIS, OpenAL, etc. to receive separate proper standalone python bindings rather than be available only through Python-Ogre directly?

I apologize in advance if this is not the case and I'm completely mistaken.


29-06-2007 06:02:25

The main driver for which library gets wrapped has been ease of wrapping (a nice C++ interface makes things MUCH easier) and availability of test programs (I don't really want to learn each of the libraries in great detail).

You can use OIS standalone, just copy the boost*.dll from the ogre.renderer.OGRE directory to the one first.

I decided to wrap OgreAL (and not openAL) as it was easier :) and I had an existing test program to use. It's not impossible to wrap openAL, just something that hasn't made it to my list, and as it's more of a raw 'C' interface it isn't as straightforward as the 'C++' interface of OgreAL

ODE is wrapped as both standalone and as OgreOde..

We did plan the module layout with the intention of adding 'non-ogre' libraries in the future (networking, other sound, physics etc) and have even discussed changing the project name to 'NUWA' to reflect the fact it's not just Ogre -- however haven't had time to worry about that -- still looking for additional developers to help out :)