Cross platform support?
How many here feel that is worthwhile to pursue other platforms with their game designs? Do people feel that it''d simply be a waste of time getting maybe the 10% combined of Linux and Mac OS-X desktop users to get their game?
It''s sort of the chicken and egg situation though....many people don''t want to give Linux a try because there are so few games available (and no commercial quality exclusive Linux games), so they see no point in taking the learning curve of adopting a new OS. But imagine for a second if John Carmack in a fit of madness said that Doom3 would be Linux only. How many people would then give linux a try?
But more importantly, is it just not worth the extra time and effort involved in designing a multi-platform game? Even ignoring *nix evangelism, what''s the point in creating cross platform games if A) the user base is incredibly small, and B) the game will also be made available on Microsoft systems? There''s no incentive really....at least for commercial based games. The big guys like Id and Epic can afford to release Linux games, because their designers are Linux fans, and from what I understand, their codebase allows them to transition to linux fairly easily (the Unreal tournament 2003 that you bought on the shelf can be installed on Linux systems...there''s no documentation for this, but if you google around you might find something...or you can buy the magazine Linuxformat which has some directions on how to do this). The trouble is that smaller development teams (and smaller publishers) won''t have the incentive really to support multple platforms....why go through 20-30% more effort and try to establish more shelf space from your distributors for maybe an extra 5-10% of potential buyers?
So this then really begs the question....are non-M$ systems doomed to having a small handful of game support? Will the power of Linux x86-64 (which will have much head start against x86 support in M$....if ever) be untapped? Tim Sweeney of Epic games has said that the next iteration of the Unreal engine will be developed on 64bit systems, and the client will be 64bit system as well. With M$ support for desktop 64bit support seemingly up in the air at the moment, this leaves Linux x86-64 as the only current desktop 64bit OS...and it may be for the next year or so (since even M$ will initially support x86-64 in their Windows2003 server....IF they keep their word and support it all).
And what of IBM''s new Power4 architecture that will probably be used in upcoming Apple computers? From all accounts, it should be a very capable performer...something Apple sorely needs since the G4 simply can''t keep up anymore compared to its x86 peers (much to the chagrin of the RISC crowd I''m sure).
So, as game designers, when you envision your projects, do you at all think of the diffuculties associated with supporting multiple-platforms (i.e. architectural differences, hardware support, OO design to encapsulate as much abstract concepts to share between all systems, etc etc), or do you not even think about it, and think M$ only?
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley
March 22, 2003 04:12 AM
Good post! I am a tad ( and by a tad I mean smashing) drunk right now, but I would like to reply to your post none the less.
Basically were programing in OpenGL as opposed to directX because of portablity. Cross platform support is not as important as making a good game however it does come into question.
Your orignal topic seems to be very sweaping. Most amatuer developers are not thinking into the 64 bit era of computing game code it would however be interesting to see say John Carmacks reaction, but as this unknown area is just that we may never know till sure.
If you can port it, more power to you. If you want to port it. Well Good. Greater audience is always a good thing as long as your willing to put forth the nessary effort.
-/drunkard.
Basically were programing in OpenGL as opposed to directX because of portablity. Cross platform support is not as important as making a good game however it does come into question.
Your orignal topic seems to be very sweaping. Most amatuer developers are not thinking into the 64 bit era of computing game code it would however be interesting to see say John Carmacks reaction, but as this unknown area is just that we may never know till sure.
If you can port it, more power to you. If you want to port it. Well Good. Greater audience is always a good thing as long as your willing to put forth the nessary effort.
-/drunkard.
I think cross-platform support is definitely worthwhile, provided that your codebase can transition fairly easily. With the increase in middleware being used in games, it's getting easier - for example, my current 2D engine is based on SDL and FMOD, and so will run on PC, Mac, and Linux, with minimal code changes (I've actually used conditional compilation to mean that I only need to rebuild the source, rather than changing it).
Also, I think the 10% figure you quoted will be - if not already - higher in times to come. Mac OS X is gaining massive popularity, at least compared to previous Mac OSes. And if the rumours about a PC port of OSX are true, then Microsoft may well lose their stranglehold on the PC OS market.
Cross platform coding encourages good app design, though. The tier-based approach I'm taking with my engine means that even if I weren't using SDL and FMOD, I'd still only need to change the foundation layer of my engine.
[Edit: oh, and I forgot:]
Also, the Mac/Linux game market is, as you said, very small - meaning that anyone who releases for them has much less competition. You can release for PC and win over 30% of 70% of the market, or you can release for Mac/Linux and win over 80% of 30% of the market.
Superpig
- saving pigs from untimely fates, and when he's not doing that, runs The Binary Refinery.
[edited by - Superpig on March 22, 2003 7:02:51 AM]
Also, I think the 10% figure you quoted will be - if not already - higher in times to come. Mac OS X is gaining massive popularity, at least compared to previous Mac OSes. And if the rumours about a PC port of OSX are true, then Microsoft may well lose their stranglehold on the PC OS market.
Cross platform coding encourages good app design, though. The tier-based approach I'm taking with my engine means that even if I weren't using SDL and FMOD, I'd still only need to change the foundation layer of my engine.
[Edit: oh, and I forgot:]
Also, the Mac/Linux game market is, as you said, very small - meaning that anyone who releases for them has much less competition. You can release for PC and win over 30% of 70% of the market, or you can release for Mac/Linux and win over 80% of 30% of the market.
Superpig
- saving pigs from untimely fates, and when he's not doing that, runs The Binary Refinery.
[edited by - Superpig on March 22, 2003 7:02:51 AM]
Richard "Superpig" Fine - saving pigs from untimely fates - Microsoft DirectX MVP 2006/2007/2008/2009
"Shaders are not meant to do everything. Of course you can try to use it for everything, but it's like playing football using cabbage." - MickeyMouse
I totally forgot to mention this since I focused on Linux and Mac OS-X support, but there''s also the issue of console support. While porting to the Xbox from a PC base should be relatively easy, there are still licensing issues to worry about. And with the PS2 and Gamecube, you have very different architectures to work around.
The world has achieved brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants. We know more about war than we know about peace, more about killing than we know about living. We have grasped the mystery of the atom and rejected the Sermon on the Mount." - General Omar Bradley
Think of it this way... Your just increased your games market by 10-15 percent! I know that doesn't sound all that great, but 10-15 percent is a big increase. If you think your game will sell 1000 copies on Windows, then porting to Linux, and OS X will cause it to sell 1100 copies. The reason big comanies ok ports to Linux and Mac OS X is because it will make more money than the port will cost. They don't port them because they like Linux or OS X. If you plan well, your port won't take more than a couple of days (or it may just take a re-compile). By adding a few extra days to your development cycle, you've gotten a larger market!
[edited by - Evangelion on March 22, 2003 11:17:16 AM]
[edited by - Evangelion on March 22, 2003 11:17:16 AM]
Another thing to consider is the sort of player you are targeting. Linux users are a different breed to Windows users, and their tastes in games may be different too. For example, the game I am working on will require that the player has a certain amount of programming nowse to get the most out of it. That sort of player is quite likely to be a Linux user, so I feel that it''s very important for my game to support both Windows and Linux. If I were making a simple action game, I may be more inclined to making it Windows-only.
Also, if you want to reap the benefits of developing your game as open source (which may be a good idea for your oft-described strategy game Dauntless), it may be easier to get help if you support Linux.
Also, if you want to reap the benefits of developing your game as open source (which may be a good idea for your oft-described strategy game Dauntless), it may be easier to get help if you support Linux.
You are not the one beautiful and unique snowflake who, unlike the rest of us, doesn't have to go through the tedious and difficult process of science in order to establish the truth. You're as foolable as anyone else. And since you have taken no precautions to avoid fooling yourself, the self-evident fact that countless millions of humans before you have also fooled themselves leads me to the parsimonious belief that you have too.--Daniel Rutter
If you keep cross-platform support an open possibility, you basically end up with several benefits, whether you actually choose to cross platform it or not:
*Code portability - this means that when you develop the sequel, your code is easy to replace parts of it. Say you want to up the graphics. If you were making the engine to be cross-platform, it''s highly likely that it would be a simple move to just redo the parts of the graphics engine you want to improve.
*Options - Now I''m not saying that a successful game should have a sequel developed right away But if you only release it on windows, and then a few years later it turns out that there are MORE mac users than windows users, you will be trapped if you didn''t develop with portability in mind. Most modern programming environments can be developed to be portable without too much work. Unless you want to be rewriting substantial portions of the game that shouldn''t need to be rewritten when linux takes over and you want to do version 3, cross-platform should be a priority. Not the highest priority, but it should be something to think about.
*Larger user base - A larger user base is not merely about money. Really good games can fail if not enough people get hyped about it. If you leave your options open for linux, macosx, there may be more people into who use other platforms than windows. Linux users may latch on to the game because linux doesn''t GET many games, giving you more advertising as the "cool linux game." THis can spill back over to windows users as well. Also, it can lead to more people interested in a sequel.
On the other hand, if you really don''t think you will be doing sequels, you want to cater to a smaller audience (it''s hard to cater to a wide audience anyway, let alone try and please windows,linux,mac AND console players all at once), and the extra time for cross platform programming will bog down the project, then go ahead and make it windows only. Or whatever.
I have a rediculous desire to make everything I do available on as many platforms as possible, but it''s not necesary for all projects.
*Code portability - this means that when you develop the sequel, your code is easy to replace parts of it. Say you want to up the graphics. If you were making the engine to be cross-platform, it''s highly likely that it would be a simple move to just redo the parts of the graphics engine you want to improve.
*Options - Now I''m not saying that a successful game should have a sequel developed right away But if you only release it on windows, and then a few years later it turns out that there are MORE mac users than windows users, you will be trapped if you didn''t develop with portability in mind. Most modern programming environments can be developed to be portable without too much work. Unless you want to be rewriting substantial portions of the game that shouldn''t need to be rewritten when linux takes over and you want to do version 3, cross-platform should be a priority. Not the highest priority, but it should be something to think about.
*Larger user base - A larger user base is not merely about money. Really good games can fail if not enough people get hyped about it. If you leave your options open for linux, macosx, there may be more people into who use other platforms than windows. Linux users may latch on to the game because linux doesn''t GET many games, giving you more advertising as the "cool linux game." THis can spill back over to windows users as well. Also, it can lead to more people interested in a sequel.
On the other hand, if you really don''t think you will be doing sequels, you want to cater to a smaller audience (it''s hard to cater to a wide audience anyway, let alone try and please windows,linux,mac AND console players all at once), and the extra time for cross platform programming will bog down the project, then go ahead and make it windows only. Or whatever.
I have a rediculous desire to make everything I do available on as many platforms as possible, but it''s not necesary for all projects.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement