2003-04-20 17:16:40 UTC
Some ideas :
I think one of the first step would be to port the basic application/window classes.
To achieve this first step, two classes (and a couple of small services) need to be adapted to Linux. First of all the OMediaEventManager class has to be ported. This class is responsible of reading and converting OS events to OMT events. Adapting this class is a good start.Then we have the OMediaSingleWindow class. This could be the second step. It would allow us to have a basic application with a single window.
Third step could be to write an OMediaVideoEngine class for Linux and then to make the connexion to the OpenGL renderer. Once this work done, it should be possible to render an OMT 3D world in a Linux window. This would be already pretty cool !
The last step would be to port all the small services (files, input and sound engines, etc.) to Linux.
To save time, it would be interesing to check if we can encapsulate some linux packages inside OMT (for sound or video management).
Before starting any work, we have to adapt the main OMT headers (OMediaTypes.h and parent headers) for linux. The headers detect the OS target at compile time, check if the processor is big/little endian, etc. It could be useful to define the "omd_LINUX" target for the Linux target.
Also it is important to note that the high-level classes of OMT never reveal or contain directly local OS types (structures or pointers). The OS target is completly invisible for an OMT application. OMT uses a special abstract class called the "OMediaRetarget" class that is used to encapsulate local OS structures or pointers.Take a look at the "OMediaRetarget.h" file.
Before starting it would be cool to upload OMT source files to the source forge CVS, so we can start to syncronize our work. I already have a newer version of OMT with some improvements (like an updated XSI loader) that I could post. I don't have any experience with CVS on source forge so help is welcome. If somebody is also interested to co-admin this source-forge project with me, let me know.
Yves -
yves@garagecube.com