Page 1 of 3

Crossplatform Idea; what do you think?

PostPosted: Aug 9, 2004 @ 10:03am
by kaiton
Hi,

An interesting idea is crossplatform programming. There are some options on the PocketPC.
There's Gapidraw and PocketFrog.
There are a few drawbacks:
* Gapidraw is expensive
* PocketFrog is not finished(not implemented on all platforms)
* They both share the same drawback:
- Only PDA/smartphones and windows are supported!

What if i wanted to create a game supported on Windows, Mac OS 9/10, Linux, PocketPC, Symbian, Palm, Zodiac, NGage, PlayStation etc?

There's no toolkit that supports all those platforms.

Why dont we come up with some standard Game Interface/framework.
That interface should be implemented on all the platforms. The interface would be a GameClas implemented in Standard c++ and would be a layer between eg DirectX and the gameclass.

The game itself should only use the framework and standard c++ functions.

Maybe better; why don;t we just "borrow" the classes from PocketFrog or Gapidraw?

Implementations should easily be tested. The specs of the framework has a test game with it included. A programmer of a framework should test it with the testgame. If it works the framework is well implemented .

This approach would have many advantages:
* A game could be very easily ported to other platforms
* Support for other platforms can easily be added(one should only create the framework on that platform)
* Programm on your favorite platform and just test it on others when the game is finished
* Developers could ask other developers to compile it for them on platforms they dont have
* etc

I've included a little scheme:
1: The game sourcefile. It used only the GameFramework and standard c++. This file should compile on all supported platforms resulting in a working game.

2: the translation step: It;s the framework/gameclass implemented on various platforms in C++. These are just C++ projects that implement the GameClass.
These should be opensource.


3: Just some examples of platforms that support C++



let me know what you think about it

PostPosted: Aug 9, 2004 @ 11:34am
by gamefreaks
I think what you are refering to is known as middleware.

A good example of this is Criterion's RenderWare. This allows development of games on the PC, XBox, GameCube and PS2, without having to re-write the rendering code.

PostPosted: Aug 9, 2004 @ 12:21pm
by kaiton

PostPosted: Aug 9, 2004 @ 12:34pm
by kaiton

PostPosted: Aug 9, 2004 @ 1:29pm
by Arisme

PostPosted: Aug 9, 2004 @ 1:34pm
by Johan

PostPosted: Aug 9, 2004 @ 2:01pm
by kaiton
Thanks for your insight

I see that there are some game libraries, like gapdraw, pocketfrog, easyCe etc.
Each of them do perform the same task; they all give the developer a Game Framework.

Why isn't there a standard framework? PocketFrog uses
surfaces, so does Gapidraw. Pocketfrog can blit, so can Gapidraw. Why can;t we just have one interface that everyone uses?

Can't we come up with some kind of standard game Header file? So we have one Header file(*.h), but everyone can implement the code the way they want.
Imagine that PocketFrog en Gapidraw would share the same headerFile/functions.
It would be far easier for the developers to swap between both.


THan people could use the same header file, but they could choose between multiple implementations(gapidraw/frog/directx/sdl).


I am sure a talented programmer could code one implementation it in a week or two, especially if he's building it on top of another game library!

So, i am not saying : Let's create a new Gapidraw/PocketFrog/EasyCe.

But i say: Let's create a shared HEaderFile defintion
that translates between all those game libraries

PostPosted: Aug 9, 2004 @ 3:46pm
by hm

PostPosted: Aug 9, 2004 @ 3:54pm
by kaiton

PostPosted: Aug 9, 2004 @ 4:01pm
by fast_rx

PostPosted: Aug 9, 2004 @ 4:03pm
by angedelamort

PostPosted: Aug 9, 2004 @ 4:05pm
by Dan East

PostPosted: Aug 9, 2004 @ 4:07pm
by mlepage

PostPosted: Aug 9, 2004 @ 4:43pm
by warmi

PostPosted: Aug 9, 2004 @ 4:49pm
by rcp