Advertisement

Linux as a games development platform

Started by August 22, 2004 08:02 AM
27 comments, last by Shannon Barber 20 years, 2 months ago
Id just write an engine thats cross-platform, doesnt have to be anything fancy.
Once thats done you'll never have to worry about this subject again.
Thats the solution.
My engine(not entirely done yet) runs Win32 and SDL and chooses between OpenGL and DirectX.
Then when you have all the general classes write code from there.
Oh my computer uses dual boot(win xp and Gentoo).
Its a good thing to have as has been mentioned.
-CProgrammer
Quote: i wouldn't be developing games FOR linux, simply using it as a dev. platform, opinions? :-D

Good idea I say stick to purely cross platform libraries and develope for linux and windows(and any other OS/architecture you can get your hands on). I can remember reading something about Linux and gaming and I'll try to remember why it said linux wouldn't be a very successful gaming platform.
1. User base, many linux users don't use linux for games.
2. Purist zealots, aka those known as the ones who would not have anything but free software on their computer.
3. For games, linux just doesn't perform as well as windows(though the gap is closing up)link
4. Tech support, and not many game developers being familiar with linux
5. Windows emulation exists and should be sufficient"
6. Linux market is nowhere near the size of the windows one
7. gcc and glibc plagues
I remember there was more but I can't think of it atm.. For hobby developement though all I can say is, go with linux, as if it's good you might see your first game(s) included with a distro then you get bragging rights when showing off linux that you made the game.. Can't do that with other operating systems..
Advertisement
Quote: Original post by eedok
1. User base, many linux users don't use linux for games.

This seems like an empty argument. I for one would use Linux for games if I had games I could play under Linux; unfortunately, there are slim pickings.
Quote:
2. Purist zealots, aka those known as the ones who would not have anything but free software on their computer.

Indeed; a pox on their firstborn and a curse on their name. I want my games, damn it.
Quote:
3. For games, linux just doesn't perform as well as windows(though the gap is closing up)link

... This article was written over four years ago. If the gap was closing then ...
Quote:
4. Tech support, and not many game developers being familiar with linux

Sadly.
Quote:
5. Windows emulation exists and should be sufficient

But will never reach native performance. If people follow this sort of thinking, Linux gaming performance will obviously never reach the levels of Windows performance - we'll be slowed down by an emulation layer.
Quote:
6. Linux market is nowhere near the size of the windows one

Chicken and egg problem. There are no games because there are no gamers; there are no gamers because there are no games. Hopefully, with companies like Id promising Linux releases, we'll get the super turbo turkey--er, chicken.
Quote:
7. gcc and glibc plagues

What plagues, exactly? No sarcasm; I'm curious.
mmm, the problem with wxWindows, and i assume most cross platform libraries is the support for Direct3D.. I wouldn't mind having both Direct3D support and OpenGL, maybe dual-booting may be my only option. Does anyone know if it's possible to program Direct3D on linux?
Quote: Original post by malune
mmm, the problem with wxWindows, and i assume most cross platform libraries is the support for Direct3D.. I wouldn't mind having both Direct3D support and OpenGL, maybe dual-booting may be my only option. Does anyone know if it's possible to program Direct3D on linux?

Not unless you use a Windows emulation layer - Wine might work, WineX would be your best bet. DirectX is Microsoft software; Microsoft are not in the habit of writing things for non-Windows platforms, so of course it will not work natively. Why bother, though? As far as I know, OpenGL can do everything Direct3D can do (though in a slightly different fashion); supporting both when one would cover all your target platforms (and the other would cover only one, which is already covered) seems like a lot of unnecessary work.
Hmm that's a good point i hadn't considered that. Since it's for my own project, i suppose i don't need to learn Direct3D, but i'll need to learn it in the future i'm guessing to get into the industry, even if OpenGL can run fine on all platforms.
Advertisement
Quote: Original post by Cipher3D
You know what I would really respect? if a respected game company (like ID, although I doubt they will ever do this) came out with a Linux version first, then a windows version three weeks later. It's a shitty marketing plan (and that's just being nice), but I would really like to see the reaction of Windows users when they find out (WTF OMFG It doesn't wurk on me comp!) Then people will start making ENIW (Linux emulator for windows) and....
I'm beginning to rant here...[grin]


Ciph


I think Unreal came out on Linux couple of weeks before Windows. It didn't have great 3D capabilities, because those things were optimized for windows.
The thing is, developing for multiple platforms at once does have its advantages. You get to test on multiple platforms, and each platform will show their own bugs.

You can buy linux unreal here: http://www.tuxgames.com/donesearch.cgi?nc=1093699649&type=and&search=unreal
You can get some other games there as well for Linux.
I haven't used the store ever, since I use Windows, but its not unreasonable to do development in Linux, and than optimize graphics for windows.

http://www.mildspring.com - developing android games

From game dev's perspective there aren't many linux users and from linux user's perspective there aren't many linux games. That's the catch 22 situation linux is stuck with now. Linux needs to become trouble free and easy to use OS with quality apps that are supported by either commercial companies or by very enthusiastic community devs that offer frequent bug fixes and give endusers what they ask for. I tried Suse 9 personal and it was ok but there were some things that bothered me. It's close to being a good os but in the meantime I'm back to win98 which is superb for me. Somehow MS guessed the right features for their endusers, probably all that testing. Suse I think has a very close shot at making linux more mainstream and I sure hope they add linux winmodem package to their distro because I can't download it from suse when I can't connect to internet in first place. I thought the desktop images and screen savers in suse were superb, a nice touch.
I think most game shops use Windows, in other industries there are niches that use more Unix (Solaris in particular).

I think demostrating that you can produce a cross-platform game is a good thing, since there are a large number of target platforms out there; Windows, Linux, Mac, PlayStation's, various Nintendo's, Palm OS, etc...

You can always install cygwin on Windows ;)

Quote: Original post by QzarBaron
Quote: Original post by malune
Once you understand those underlying concepts, to me it's just a matter of coding it in a different syntax, but i'm probably wrong.


No you aren't wrong it's true. But some of the Windows APIs are just horrible(Win32 has to be one of the worst looking things out there)


Win32 is heaven-sent compared to many *nix libs, bsd sockets are probably the most pathological example. Nevermind looks, focus on the guarantees made by the API; for example in POSIX, if nothing is attempting to join a thread when it terminates, you never can join it. It is an error to attempt to join an already terminated thread, and you are not guaranteed that the join will ever return in this case. Or if a singal it set it is completely lost if no one is waiting for it, even for condition variables. Win32 has nothing this crude in it; only one-shot event pulses can be lost all other signals are latched and threads have to be closed like all other resources (option for self-closing threads if you like detached threads).
- The trade-off between price and quality does not exist in Japan. Rather, the idea that high quality brings on cost reduction is widely accepted.-- Tajima & Matsubara

This topic is closed to new replies.

Advertisement