Page 1 of 1

Xbox 360, Ps3, Wii or other alternative builds

Posted: Sat May 17, 2008 1:28 am
by jph_wacheski
I don't suppose this is impossible, however highly unlikely it may be. Would take someone with knowlage of the other system,. and compiler building skills as well. Since the project files are all XML it is the compilation process that would need to be recreated for alternative platforms. Thanks to VilleK being a danm great guy, the source is accessable and anyone could take this on.

Looking at some of the other game building tools around, comercial as they may be,. [ eg. or or or etc., etc.] all using the same project files to compile for multiple platforms seems to be the norm. Any why not! the 'game' is a description of objects and interactions created with rules,. and all these glorified calculators can follow the rules and create versions of the game for more kids to play. Aint that the point?

Posted: Sat May 17, 2008 10:31 am
by kattle87
I think the point is that we are currently using a Delphi engine, which means Pascal Engine, and... uhm... I think that nothing like a delphi compiler exists for any console... Perhaps it might be possible make the games run under PS3: remember that PS3 is Linux-compatible and has OpenGL full support! You get your games working under linux, pack them into a liveCD, put the liveCD in the PS3, end play!
Now that I'm starting to think about it, we actually CAN DO something like this quite without efforts ;)
Imagine the DVD cover: "Old School's Game"...

Things are getting interesting... We could spread those CDs in our local videogames stores... for free... ;) So keep on coding! :D

Posted: Sat May 17, 2008 11:48 am
by Kjell
Hi guys,

Since ZGE makes use of SDL*, in theory it should not be too difficult to port it to PS3 / Wii etc. 360 however is another story due to DirectX. But when looking at the engines jph mentions, they are quite limited in the platforms they support at well. Blade only does PC / 360, Unity does PC / Mac / iPhone / ActiveX ( great engine by the way ), and the same for Ston3D. The only true multi-platform engines I've worked with are in the high-end market spectrum such as RenderWare ( PC, Mac, DC, PS2, Cube, XBox, 360, PS3, Wii, Arcade ) and GameBryo. And to get the most out of developing for consoles, you really need Dev / Test Kits ( most of the time even mandatory ) .. which aren't cheap either.

*By the way, SDL has been ported to the Dreamcast :wink:


Posted: Sat May 17, 2008 1:41 pm
by VilleK
I'd love to see a ZGE runtime on more platforms!

The two hard dependencies of ZGE is: Pascal and OpenGL.

Freepascal can generate code for Game Boy Advance and Nintendo DS, so if there is a OpenGL layer available for those platforms then a port should not be too difficult. Limited RAM could be a problem though. I think that attempts have been made to port freepascal to the original XBox as well as other platforms but nothing stable is available.

On Windows ZGE is compiled with bindings to the Win32 api and OpenGL directly.
On Mac and Linux, SDL/OpenGL is used instead. SDL is available for a wide range of platforms, this makes it easy to port console emulators and games whenever a new platform is ready. SDL is optionally dependent on a OpenGL implementation on the target platform, this is the variant ZGE use.

I will definitely keep my eyes open for opportunities for porting ZGE. Since the platform-specifics is isolated in a single source file in ZGE this increase the possibility of getting other developers to help as they do not need to understand the complete ZGE codebase.

Posted: Sun Apr 24, 2011 5:28 am
by keymasher
I was thinking about this today, when i saw someone ask you about android/iphone on twitter.

If it requires looking at a different rendering pipeline then it may be worth looking into Adobe's Molehill API (which rests on opengl es 2) that would allow ZGE to run on flash(zge on the web!!) and on mobile devices.

If we can get the ZZDC runtime compiled to llvm, then you can use that bytecode to port it to avm2 (via Adobe Labs Alchemy) which is what Unity 3d will be doing. Although im not sure how asm heavy zge is, which wouldn't be compatible.

Posted: Mon Apr 25, 2011 7:11 pm
by VilleK
Interesting idea but I'm not sure if Freepascal will support llvm anytime soon? At least that's the impression I get when googling about it.

There is practically none assembler code in ZGE, just a few math routines that can be surrounded with ifdefs and alternative implementations.

Adobe is doing a lot of cool work with llvm and if we can tap into it somehow then that would create lots of possibilities.

Posted: Tue Apr 26, 2011 4:02 am
by keymasher
Yeh your right,
the only things i could find were

A llvm branch unsure how active it is tho
and some thesis project which is in pre-alpha, expected to be done by 2012.

Posted: Tue Apr 26, 2011 6:34 am
by VilleK
That llvm branch seems to be ongoing at least, the thesis project has no code checkins since 2010 so it is probably abandoned.

Perhaps Freepascal for iPhone is the most realistic alternative at the moment. There has been lots of activity around that so it should be somewhat stable.

The main hurdle would then be to adapt ZGE to OpenGL ES. This could be done either by abstracting all render calls out to a separate unit or by writing code that captures GL immediate mode calls and simulates them in ES.

Posted: Mon May 25, 2015 12:48 am
by Imerion
Sorry for digging up this old thread, but I'm just curious about the state of these things. :)

Say I would be able to get a Wii U devkit. Could I compile the ZGE runtime for it and use it to run my ZGE games on Wii U?

Is both SDL and FreePascal necessary? I noticed there is FreePascal for Wii, but probably not Wii U...

Posted: Mon May 25, 2015 1:03 am
by Kjell
Hi Imerion,
Imerion wrote:Say I would be able to get a Wii U devkit. Could I compile the ZGE runtime for it and use it to run my ZGE games on Wii U?
Nope. Since SDL isn't available for the WiiU ( as you mentioned ), you'd have to port the OpenGL "driver" ( used by ZGE ) to the GX2 API yourself.


Posted: Mon May 25, 2015 11:46 pm
by Imerion
I see. Thanks for the answer! Guess I'll keep using ZGE for PC/Android games and try Nintendo's web framework for Wii U games. Not as powerful, but I managed to make enchant.js do some fun things. :)

Posted: Tue May 26, 2015 3:51 am
by rrTea
If it's of any help, seems Unity 5 is moving towards supporting Wii U and maybe New 3ds (the timing seems a bit off to me?) (link).

Posted: Tue May 26, 2015 11:07 am
by Kjell
Hi rrTea,

The first version of Unity that supported the Wii U was released in 2013 ( iirc ). Making Unity 5 compatible with the system requires additional work, which is probably why it wasn't included when it launched.

A additional benefit is that the licencing plan for Wii U games built using Unity ( or Web Framework ) is more lenient and indie friendly than when you'd want to use ZGE ( which would require taking the "WarioWorld" route ). You're still required to purchase a dev-kit though.