Archived

This topic is now archived and is closed to further replies.

Cyber_Sneak

Is multi-platform support that important?

Recommended Posts

Cyber_Sneak    122
Hi there! First off, I''m an indie dev planning to make a game. For different reasons, I''ve decided not to write my own game engine and to use someone elses instead. Right now I''m considering either Torque or PR. The big difference is that Torque is basically OpenGL with a DirectX wrapper, while PR completely realies on DX. The reason I''m considering PR is because its graphics capabilities are more advanced that Torque''s. So the big question is....Is multi-platform support all that important? I mean, whether we like it or not, Microsoft has the majority of gamers using Windows (even if many of these people have Linux/Mac somewhere else, most everyone does have Windows). At least, thats what I think. I havent seen any real stats on this. And what about in the future? How long is Windows going to be the top gaming OS? I dont want to start developing a game and find that when its released, no-one will want to get it cause they''d have to boot up old windows again. Anyone have any advice on this? Is Windows likely to stay ahead for many more years? ******* About Torque/PR: Anyone used both and can tell me which they like better? I understand that PR is a graphics engine while Torque is a complete game engine. However, I completely dont mind this! I mean, I like programming, so if I have to do more coding to get a PR game together, I''m all for it! ******* One last thing: at the risk of sounding like a complete noob, I''m gonna ask one more thing. What do you think about programs like DarkBasic Pro? I have to say, just the word BASIC in the name kind of scares me off....but they say you can code DLLs to add to the engine. Is a program like this worth checking into? ******* Few! Long post! --CYBER_SNEAK

Share this post


Link to post
Share on other sites
Ready4Dis    180
Only you can decide how important multi-platform is. If you think that there isn''t enough of a user base in other OS''s for your game, then don''t worry about it. If you think there is a large user-base, worry about it. We can''t decide for you .

Share this post


Link to post
Share on other sites
HappyMiel    122
Personally, I think Multi-Platform support is a big plus, I think that while there are a whole lot more wondows users out there, there also are a lot of linux users, who also like to play games. And I think that there is a larger percentage of linux users than windows users that will know of/ check out/ buy indy games.(just a guess, really)

And I think it is nice when you do not only keep in mind the wishes of the majority but also those of a smaller group.

Nonetheless I think the aboslute numbers of users who will play your game are windows users, and i think that windows will be the standard for a long time from now, so that you do not have to worry about people having to boot up old windows again.

I would choose the multi-platform, but less advanced graphic solution, but its mostly personal preference I guess.

Share this post


Link to post
Share on other sites
Kylotan    10007
quote:
Original post by Cyber_Sneak
I mean, whether we like it or not, Microsoft has the majority of gamers using Windows (even if many of these people have Linux/Mac somewhere else, most everyone does have Windows). At least, thats what I think. I havent seen any real stats on this.

Yep: nearly everyone has Windows, and even the Linux gamers have a Windows machine, partition, or emulator.

But if you wanted to change this, writing good applications - including games - is the main way of doing so.

quote:
And what about in the future? How long is Windows going to be the top gaming OS? I dont want to start developing a game and find that when its released, no-one will want to get it cause they''d have to boot up old windows again.

lol, how many years is this game going to take? Personally I hope Linux does begin to offer a credible alternative to Windows soon, but in my opinion Windows is unlikely to drop below 50% of the market this decade.

[ MSVC Fixes | STL Docs | SDL | Game AI | Sockets | C++ Faq Lite | Boost

Asking Questions | Organising code files | My stuff | Tiny XML | STLPort]

Share this post


Link to post
Share on other sites
Cyber_Sneak    122
quote:
I dont want to start developing a game and find that when its released, no-one will want to get it cause they''d have to boot up old windows again.



quote:
lol, how many years is this game going to take?


OK, so i was exaggerating a bit

Share this post


Link to post
Share on other sites
alnite    3438
I also had this question some time ago, until I decided that I want to stick with DirectX and Windows. Here's why:

1. I have DirectX SDK, VS.NET, and using Windows
2. I make games.

So...instead of learning some new stuff like OpenGL, Linux game programming, or Mac game programming just to make my game can be run on many platforms, I'd rather make more and more games with new twist and creativity.


Current project:
2D in Direct3D engine.


[edited by - alnite on March 18, 2003 8:58:30 PM]

Share this post


Link to post
Share on other sites
Shag    122
You could always just consider it as 'programming kudos' to be able to write for something other than windows!

ie, being able to write code that runs on both big & little endian machines or code that doesn't rely on DirectX support functions!

On the other hand you could just say sod it, windows is my target, and i'll stick to that!

It's entirely your choice

Neither is right or wrong - it's entirely dependant on what you want to do.

EDIT - I ought to clarify this before a war starts - I have no view on either preference!

[edited by - Shag on March 18, 2003 8:59:29 PM]

Share this post


Link to post
Share on other sites
Marvin    127
I tend to write my windows game with the point in mind that i''d like WineX (linux windows thingy) to be able to run them, to do this i basically stick to OpenGL and avoid platform specific code where posible, and obviosuly test it with WineX

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
100 % of all pc games are made for windows
0-0.5 % of those are ported to linux
1-1.5 % of those are ported to Mac.

So in light of that the choice is easy.

The choice between DX and opengl engine is to choose the best one since both exist on Windows.

It''s hard enough to make a game. Don''t try to score Kudos just because you feel like it. Take the shortest route and make it count.

Share this post


Link to post
Share on other sites
RizMan    146
Indeed, games nowadays are made for windows and only a very few are ported to GNU/Linux or Mac. The most recent example being UT2003. They ship binaries for a linux installation for the game and it runs. Not as well as in Windows, but it''s playable.

So I think that the industrie starts to see that lots of poeple switch to an alternate OS like GNU/Linux.
I personally admit that for gaming I still use windows as UT2003 is still an exeption. But I do my work exclusively on GNU/Linux. So when I want to take a break and game a little bit, I don''t want to boot Windows. So I''m glad some people port their games to other Platforms.
Me personally am doing my game programming in GNU/Linux. But I am trying to be as platform independent as possible. I''m using OpenGL and SDL. My current project doesn''t need 1 code change in order to compile in MSVC6. (probably that''s because it is my first game and not complex at all, but hey, I''m proud of it)

So to make a long story short: I think that it gets more and more important nowadays to provide binaries for other OS''es then Win as more and more people switch to them.

However, in the end, it''s all up to you.

Share this post


Link to post
Share on other sites
Drath    138
I don''t believe anyone has mentioned stuff like the xbox, playtation and so on. Making something as portable as possible will make a realease for one of those easier. I have just started using wxWindows which is a multi-platform GUI (amongst other things) API. It is avalible at wxWindows.org.

Share this post


Link to post
Share on other sites
Ziphnor    122
As someone already pointed out, the lack of proffesional games on a platform(like linux) just makes it more interesting as a target platform for a game. Simply put, there might be fewer users but there is also alot less competition, and that makes a difference when we are talking indy/amateur games(Especially when you can target multiple platforms without decreasing your chance of succes on the popular(win) platform).

My main target for my current game attempt(a 2d rpg, if its ever finished) is Linux(x86). This is because i prefer linux to windows, and since it will definetly be open-source freeware. I am using SDL/OpenGL though so there shouldnt be any problems with porting it extremelly easy to windows, and then slightly more complicated to Linux(non-x86) and Mac.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
quote:
Original post by Ziphnor
As someone already pointed out, the lack of proffesional games on a platform(like linux) just makes it more interesting as a target platform for a game.


Loki software went out of business trying to sell Linux games. The Linux community is by and large in favor of open source which make commercial game development unviable.

There are also insufficient numbers of home users with Linux installed. Meaning there is less potential for profit.

So if you are an indie developer, I would stick with developing for Windows, especially if the cost of maintaing a multi platform development enivronment is prohibitive.

Share this post


Link to post
Share on other sites
Kylotan    10007
Actually, I believe Loki was mainly porting games that already existed on other platforms. To say that is unviable is very different from saying commercial game development on Linux is unviable. A killer app such as a great game that only ran on Linux might sway a lot of people to the platform, just as a lot of people bought certain consoles on the strength of 1 or 2 games.

[ MSVC Fixes | STL Docs | SDL | Game AI | Sockets | C++ Faq Lite | Boost
Asking Questions | Organising code files | My stuff | Tiny XML | STLPort]


[edited by - Kylotan on March 19, 2003 1:48:08 PM]

Share this post


Link to post
Share on other sites
LilBudyWizer    491
Just a thought, but if you want to include the "majority" of gamers then you have to include consoles and specifically PS2. You walk into an EB and PC games are an also ran shoved in the corner. 20 people in the store and you''re the only one looking at PC games.

There is crossover, but not a lot. So there may not be tools to support that type of cross-platform development or they may be effectively unaffordable. I would think though that you want to consider whether the tool facilitates porting to an unexpected platform or is simply what they support it.

Share this post


Link to post
Share on other sites
Xai    1848
A "Killer Game" available only on linux will NOT swing people to install linux.

You people are not looking at this from the computer illiterate consumer''s point of view. These people call tech support to get their internet connection configured ... these people call tech support to install a CD-R drive ... these people buy only the most well advertized games (and those recommended by store clerks) for their children on Christman, because it''s all they have to go by. These people are scarred silly of viruses, don''t know what the difference between USB and Firewire is (except that their computer has USB 1.1 ports or some such), and do NOT know what a master boot record, or boot loader is.

Some day, someone like Gentoo linux will create a small DVD bootable version of their os with the ENTIRE driver set and autoconfiguration already ready to go ... and all you have to do is add your program package and viola bootable games (just like on consoles) ... at THAT point, games can use whatever OS you want .. but until that point, the game MUST run on the customer''s current OS.

As proof, can anyone here name a single Windows game which does not run on Windows 98? In fact, DirectX 9.0 is the very first library not to work on Windows 95.

Share this post


Link to post
Share on other sites
Ziphnor    122
quote:
Original post by Anonymous Poster

There are also insufficient numbers of home users with Linux installed. Meaning there is less potential for profit.

So if you are an indie developer, I would stick with developing for Windows, especially if the cost of maintaing a multi platform development enivronment is prohibitive.



First of, i prefer SDL/OpenGL to Win32/DirectX(and development in linux to ditto in windows), simply for aesthetic reasons. But thats just me.

Secondly with those tools, there arent really any cost involved with developing multiplatform.

So my point is that if you target multiple platforms(which i claim can be done easily) then you are sure that you have more potential customers. I also claim that you have a bigger chance of making an impression in the linux gaming world, because it is much less competitive. I cant really see why an indie developer wouldnt want to do this, unless its a matter of personal preference for the windows platform(which is of course a valid reason).

Share this post


Link to post
Share on other sites
Xai    1848
hey Zip, you may be right ... it''s basically the same thing with country music and christain rock ... easy to be the big fish in the tiny market ... but that does NOT mean you will make more money. There is no current company making a profit in Linux gaming, as far as I know, there is no current game company who has every made enough money in the linux market to sustain there operation (without the windows sales to provide the main profits).

BUT, that does not make me anti-linux. My current base libraries all compile under VC++, Borland C++, Linux, FreeBSD, and BeOS ... why? Because I use FreeBSD servers, my last job was on BeOS, and I LIKE being able to provide people usefull code, when it costs me very little to do so. Will my next games server run on Linux, FreeBSD, BeOS - YES ... will I release a client for those OSes, when I first finish the game ... NO. Why? Because there ARE issues with every platform that are different, even just little stuff like trying to figure out how to get crapyp integrated sound cards not to make those damn poping sounds ... which through carefull coding, can be done (usually) ... but I don''t have the man power to do that for multiple different platforms, before I see ANY money in return.

Also, I use SDL right now for my prototypes, and early game stages ... but I am NOT happy with ANY platforms sound libraries / support except windows (I don''t know about Mac because I cannot invest in the hardware). So right now I use SDL / OpenGL for graphics, but DirectMusic for sound. Someday I will decide that some cross-platform sound library is good enough ... and you know what day I''ll swith to that library ... when it works GREAT on Windows, Linux, BeOS, Mac, and Playstation2.

Actually, the day anyone makes a cross-platform library which give good performance on Windows, and the 3 consoles, I will support it wholeheartadly (and ship to ALL platforms it supports).

Share this post


Link to post
Share on other sites
Kylotan    10007
quote:
Original post by Xai
hey Zip, you may be right ... it''s basically the same thing with country music and christain rock ... easy to be the big fish in the tiny market ... but that does NOT mean you will make more money.

But then it doesn''t mean you''ll make no money. And just because no company has made a profit in Linux gaming so far, doesn''t mean it can''t be done. (It doesn''t mean it can, either; it''s just not time to give up just yet.)

[ MSVC Fixes | STL Docs | SDL | Game AI | Sockets | C++ Faq Lite | Boost
Asking Questions | Organising code files | My stuff | Tiny XML | STLPort]

Share this post


Link to post
Share on other sites
Xai    1848
I''m with you all the way Kylotan ... someone will make money on Linux software ... and if they can develop the software cheaply enough, it will be soon (because in my mind, the linux market is finally reaching a (desktop) size similar to what DOS had around the 3.3 or 5.0 days ... enough to make a few companies good money, and enough to make many small groups enough to stay employed ...)

Basically I feel there are 2 categories availible for people trying to make it in alternative software. 1) create big, valuable, professional quality apps - sell them at 30 - 70% their closest windows competitors pricing, and offer at least 1 feature or experience that users desire more than any competing product. 2) create small, indie developer style programs, cheaply, and with respect for the neglected users needs (games that are old school, not being made anymore ... games that run on older hardware ... turn based, 2d ... whatever ... hell, programs that RESPECT the user''s machine and don''t take over file extensions and install addware, etc...)

Now my personal stance right now is ... I write my libraries to pure language specs as much as possible (and limit it to a portable subset that works on multiple platforms and vendors) ... I also use open file formats (xml and ini based data files) so my user / fan base (someday) will be able to create viewers / editors etc, for whatever system they want. In fact, My first program with my current set of libraries is gonig to be a play-by-email turn based strategy game ... with server software that written in standard C++ (plus simple crossplatform scripts). And I will allow anyone that wants to to create client software for the game ... so if someone writes a PalmPilot client program ... more power to them.

Share this post


Link to post
Share on other sites
Stary    122
quote:
Original post by Ziphnor
Secondly with those tools, there arent really any cost involved with developing multiplatform.


Compile your code on sun solaris on a sparc and say that again. There is a cost you look at a broader perspective of platform-indepentance. You need to consider byte-order just about everywhere from networking to file IO, for instance. Suddenly, your processor is 64-bit rather than 32-bit, as well.

If you want your code to compile on other compilers than gcc, you have a bit more work to do as well. Like the fact that the 64-bit integers don't have the same name on gcc as on MSVC++, and that you don't write 64-bit constants the same way.

That doesn't mean I think you shouldn't do it, I obviously am since I know the problems. Our engine currently compiles on windows, linux and even solaris if you want to. But you should be aware that the graphics/sound/input/etc libraries are not the only things that differ between platforms.

Also, developing multi-platform creates a need to test-compile and test-run multiplatform as well.

quote:
So my point is that if you target multiple platforms(which i claim can be done easily) then you are sure that you have more potential customers. I also claim that you have a bigger chance of making an impression in the linux gaming world, because it is much less competitive. I cant really see why an indie developer wouldnt want to do this, unless its a matter of personal preference for the windows platform(which is of course a valid reason).


There are two very simple reasons for not doing it:

1. You don't want to use SDL for one reason or other. We don't and it creates some design issues around the fact that you need to write windowing code for OpenGL for each platform and so on, which makes it a bit worse.

2. You want DirectX.

In the end, I still think it's worth it (especially if you can use SDL). With a bit of thought, all these issues can be designed around to not be much of a problem at all. However, you should be aware that it does incur a slight development overhead.

(Edit: fixed quotes)

[edited by - Stary on March 23, 2003 3:16:07 AM]

Share this post


Link to post
Share on other sites
Ziphnor    122
quote:

Compile your code on sun solaris on a sparc and say that again. There is a cost you look at a broader perspective of platform-indepentance. You need to consider byte-order just about everywhere from networking to file IO, for instance. Suddenly, your processor is 64-bit rather than 32-bit, as well.



Big/little endian is a problem, but if you take it into consideration when first making the program, it isnt really that bad. As far as word-size goes, i almost never rely on the basic types being any specific size so i cant see why that should be a big problem.

I think the problems with cross-platform sound libraries, that someone brought up above, is a bigger problem.

Besides we were discussing multi-platform, that doesnt necessarily mean ALL platforms



[edited by - ziphnor on March 23, 2003 6:49:35 AM]

Share this post


Link to post
Share on other sites
Prefect    373
I actually think being able to test drive on multiple platforms is an advantage. Certain kinds of weird bugs tend to appear on one platform sooner than on the other.

cu,
Prefect

Share this post


Link to post
Share on other sites
Heaven    600
quote:
Original post by Xai
As proof, can anyone here name a single Windows game which does not run on Windows 98? In fact, DirectX 9.0 is the very first library not to work on Windows 95.

Actually I believe it was DX 8.1 that started requiring Win98. I remember. It was when I was still using Win95 and tried to play the Empire Earth Demo, and found out the only thing that would work on ''95 was DX 8.0a.

I remember being pissed that Micro$oft was in effect forcing people to upgrade to Windows 98 or higher. And I remember holding out to the bitter end, when Dungeon Siege/Warcraft 3 were released last year and required DX 8.1+. Heh. I just couldn''t stand it any longer.

So now I''m using Windows 98, after using ''95 for about 6 years. I have no choice if I want to continue to play new games. And I make it a point NOT to use DX. If I do need some DirectSound or Music functionality I''ll make it a point NOT to use anything higher than 8.0a.

And until new games require a different OS to run I''ll stick with Windows 98, even if it''s for the next 10 years.

Ok, I''ll get off my soapbox. Take care.

Share this post


Link to post
Share on other sites