Port of an open source game engine

Posts: 9
Joined: 2008.08
Post: #1
Hi all,

First of all I only discovered this community yesterday. I then did a quick search in this forum (and on google in a more general way) but I couldn't manage to find precise answers to the questions I have.
I hope it hadn't already been answered earlier here, if so, please forgive my lack of skills in searching! =)

I've been working, as part of a small team, on a portable, open source, 2D-oriented game engine for a few years, and I'd like it to be able to run on mac OSX. I'm prety comfident there's not a lot of work (maybe none at all?) to make it run on this OS.
Currently it runs under windows (mingw and native with msvs) and linux. I'm working on the GP2X version and PSP/DS versions are planned.

My problem is that I don't own a mac.
I'm afraid to know the answer to my question, but it's worth a try: is there a way, any way, for me to build (and test) a max OSX version of this engine from a computer running windows or linux?
I couldn't find any cross-compile solution or valuable information, but as stated before, I'm not very skilled at searching on internet. =)

If not, do you know if there are companies hosting mac OSX shell accounts or even providing VNC access to mac? I'm pretty sure this doesn't exist though, but maybe I'm wrong...

Thanks in advance for your help! =)

Now, a fast presentation of the engine itself:

It has a plugin-based architecture, allowing the core to be as most as platform-independent as possible. All platform-dependent features are added through plugins (display, timers, sound, keyboard, joystick, mouse, render, physics, events, ...).
It is also designed to be data-driven so as to write as few as possible code and to minimize all the compiling.

It currently has a lot of implemented features, ranging for the most usual ones:
- sprites management including alpha-blending, coloring, rotations and scaling
- solid physics
- sound and music
- mouse/keyboard/joystick handling
- hierarchical frames (or scene nodes)
- ...
to some more unusual like:
- a clock system allowing to keep time consistency and localized time stretching
- animation graph for easy and automatic chaining from any animation to any other one
- visual FXs based on curves combination applied on properties such as scale, position, rotation, color and alpha
- almost everything is tweakable through config files (creating an objet is just one line of code, but it can have physics, graphics, sound, ... depending on its config). The config properties support inheritance and multiple file history

It's mainly written in C, focusing on simple module design, execution speed and grouped memory allocations. Some plugins are coded in C+ though, and it can be used by any C-interfaceable langage. It can also be used as a whole engine or just as a library allowing you to used only parts of it.

It's still in beta (close to v0.9) and I'm trying to put up a web site. Currently the site is pretty empty (especially the about section that got erased due to a database crash), but it'll have more and more content soon.
The site can be reached here: orx-project.org

I also made a pre-realease including 7 tutorials (+binaries for windows and linux) that can be found via the website download link.
Also, an up-to-date doxygen doc can be found here.

I've recently added 2 other tutorials (physics and differential scrolling) only available on its svn repository yet.

Sorry for this long post, but I'm pretty excited about having it to work on mac OSX and I hope someone will be able to show me how I can do this (or help me directly with this task, of course!)

Thanks for your attention

- iarwain
Quote this message in a reply
Posts: 227
Joined: 2008.08
Post: #2
Gcc is (from what I've heard when I planned a ds-game engine) capable to compile on one OS for another.
An example is Devkit Arm for ds.
Quote this message in a reply
Posts: 9
Joined: 2008.08
Post: #3
Thanks for your answer, Oddity007.
Actually, I was looking a bit at this yesterday.

I've been using gcc as a cross compiler for some time now (mainly from linux to windows and from linux/windows to arm (GP2X/DS)). But I always used prebuild version of them so far (with compiled libc, etc...).
I have no idea how to create a cross compiler from, let say, mingw32 to mac OSX. Which target should I use?
If someone has some experience in this kind of manipulation, it'd be very appreciated. Thanks in advance!
Quote this message in a reply
Posts: 1,563
Joined: 2003.10
Post: #4
While what you're trying to do may be possible, it won't help you verify that your code actually works as intended (or works at all) on the target platform; just that it compiles. Since you'll need a Mac for testing anyway, you can also use it to compile your code and not have to bother with cross-compile issues.
Quote this message in a reply
Posts: 9
Joined: 2008.08
Post: #5
Yes that's totally true. But it would still solve part of the problem.
I think it'll be far more easy to find someone (a regular non-coder user) with a mac to test it from time to time (to check if the engine is not broken) than to find someone giving me a near-permanent full access to dev (including tools) on this platform.

As the engine works already on other platforms, I could test there myself and just make sure packages are available for Mac OSX.
If something is broken only on mac though, the users will probably create a ticket to warn me and I'd still require an external help from someone to check everything's been fixed (using VNC for example).

Of course, the best would be to find someone interested in maintaining the mac version/packaging. But finding a coder with spare time and motivated enough by a project no one has heard before sounded less probable to me than finding tools to take care of it myself.
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  My port of the HGE game engine for Mac OS X / iOS A_Pepper 2 8,265 Feb 11, 2012 07:36 AM
Last Post: A_Pepper
  Shiva3D Game Engine SubspaceGames 0 6,455 May 19, 2011 10:57 PM
Last Post: SubspaceGames
  [split] CocoaBASIC released as open source Carlos Camacho 0 5,205 Jan 28, 2011 04:13 PM
Last Post: Carlos Camacho
  Game engine disadvantages Miglu 41 41,402 Nov 18, 2010 03:29 PM
Last Post: Miglu
  Any suggestions for an open source video encoder? AnotherJake 26 21,064 Jan 28, 2010 05:25 AM
Last Post: michelleC