
Can This Game Run In Linux?
#2
Posted 12 October 2004 - 10:23 AM
Greetings
Red Knight
Visit my blog at: flois.blogspot.com

Pookie cover me, I am going in.
#3
Posted 03 January 2005 - 02:47 PM
No, because 1st it is in development yet and 2nd because there arent linux developers among us. (that is the principal problem), however we encourage linux developers to port it to linux if they want.
I rather doubt that will be done.
Being a Linux developer myself, I had great hopes when I saw the game was GPLed - open-source efforts tend to be developed under Linux, both for the development environments (I can't afford freakin' Visual Studio, are you kidding?) and because it will almost automatically be cross-platform that way.
All the major aplicable Linux toolkits are cross-platform; the Windows toolkits generally aren't. So, as for why it would be hopeless to port, and with the caveat that these are generic problems that may not all apply to Xenocide:
- All the project files are in Visual Studio project files, not normal makefiles. Easily fixed.
- There are probably Windows-specific calls in there. Troublesome to fix, and a source of bugs.
- It uses DirectX instead of OpenGL/OpenAL/SDL/whatever. OpenGL (and the others) are platform-independent; DirectX... isn't, to say the least. Ripping out the DirectX code and replacing it with appropriate alternatives would be a massive overhaul, and an equally massive source of bugs. It would also probably be a fork; if the devs had cared about platform-independence, they wouldn't have used DirectX in the first place.
And finally, the number one reason I won't be porting it:
- It doesn't use Lisp or Python. I could've handled a partially-C++ codebase, but don't ask me to dive all the way into such an indescribable horror.
#5
Posted 03 January 2005 - 03:03 PM
By the way, the alpha is currently working well with opengl rendering. It actually looks better than the dx9 rendering at the moment.
#6
Posted 03 January 2005 - 03:20 PM
Otherwise, we can't do anything beyond the current planned scope. None of us has any real intention of taking up Linux programming to make the project Linux compatible, and there doesn't seem to be a great demand for it to be that way.

#7
Posted 03 January 2005 - 03:56 PM
I think I can say something on our windows dependance.No, because 1st it is in development yet and 2nd because there arent linux developers among us. (that is the principal problem), however we encourage linux developers to port it to linux if they want.
I rather doubt that will be done.
Being a Linux developer myself, I had great hopes when I saw the game was GPLed - open-source efforts tend to be developed under Linux, both for the development environments (I can't afford freakin' Visual Studio, are you kidding?) and because it will almost automatically be cross-platform that way.
All the major aplicable Linux toolkits are cross-platform; the Windows toolkits generally aren't. So, as for why it would be hopeless to port, and with the caveat that these are generic problems that may not all apply to Xenocide:
- All the project files are in Visual Studio project files, not normal makefiles. Easily fixed.
- There are probably Windows-specific calls in there. Troublesome to fix, and a source of bugs.
- It uses DirectX instead of OpenGL/OpenAL/SDL/whatever. OpenGL (and the others) are platform-independent; DirectX... isn't, to say the least. Ripping out the DirectX code and replacing it with appropriate alternatives would be a massive overhaul, and an equally massive source of bugs. It would also probably be a fork; if the devs had cared about platform-independence, they wouldn't have used DirectX in the first place.
And finally, the number one reason I won't be porting it:
- It doesn't use Lisp or Python. I could've handled a partially-C++ codebase, but don't ask me to dive all the way into such an indescribable horror.
1. Project files are for VSnet2003 becouse that's what we (developers) working on this project have access to and we posses the knowledge to use it. I don't know how to use makefiles, althou I can write Scons scripts and CMake scripts, those are enough platform independant to make it easy to build under linux. Nevertheless someone with linux box and some linux knowledge is needed.
2. Windows specific stuff are:
- typedefs
- WinMain
Nothing more to say. Well maybe only that we use PNG (instead of DDS).
3. We're using Ogre, which works for linux and mac AFAIK. And Cg as shaders language.
Want to port it?
Guyver

Sourceforge: guyver6
LinkedIn: Andrzej Haczewski
"A good business idea, they say, can be explained in one sentence. Similarly, each program entity should have one clear purpose."
Join #xenocide at irc.freenode.net.
#9
Posted 03 January 2005 - 06:51 PM
If that's *it*, then, sure.
Why do you have a dependence on DirectX, though? I'm not familiar with Ogre, but the idea of it translating into DirectX calls on Windows and OpenGL calls on Linux sounds a bit... weird.
Ogre can use both DirectX and OpenGL as a renderer. If you don't have DirectX 9 on your computer (be it not being installed under windows or not available under linux), you can still render using the Ogre renderer.
So basicly, there is no dependency on DirectX. Nevertheless, we encourage developers under windows to also use the DirectX renderer. There are quite some buggy OpenGL windows drivers out there (ATI used to be famous for them), so we should always check to see if the visual output works under DirectX as well (We had, or are still having, a nice little issue there with our shaders for the globe).
Concerning the project files, they are XML, so it should be fairly straightforward to create an automatic converter to SCons or makefiles.
I know you can plug makefiles into Visual Studio but it's not very comfortable to work with and as long as most of developers are working in Visual Studio, we'll probably stick with the project files.
But anyway: Great to have someone who is willing to tackle the linux port. Don't hesitate to contact me by icq or pm if any questions arise. I'm really looking forward to have a linux port (mostly to be able to take this as a starting point for a mac port so I could play Xenocide on my iBook

Greetings,
Rincewind
Greetings,
Rincewind

I love boost!!! The next best thing since the invention of C++.
#10
Posted 04 January 2005 - 07:35 AM
Anyway, I'll contact you as soon as I've finished my current project, which should be a day or two. (Possibly times Pi^2, but that's life)
#11
Posted 04 January 2005 - 02:49 PM
I'm sorry to interupt, but wouldn't be DOSBOX a good tool to run it in linux? They say it's working on "Gentoo Linux", whatever that is. And it would run too fast anyway without DOSBOX.Forget starting point; a successful Linux port would include 98% of the work needed to make it work on a Mac, these days.
Anyway, I'll contact you as soon as I've finished my current project, which should be a day or two. (Possibly times Pi^2, but that's life)
Oh, sorry, you're talking about something for Windows. Nevermind
Edited by dan2, 04 January 2005 - 02:51 PM.
#12
Posted 04 January 2005 - 06:42 PM
I'm sorry to interupt, but wouldn't be DOSBOX a good tool to run it in linux? They say it's working on "Gentoo Linux", whatever that is. And it would run too fast anyway without DOSBOX.
The game *might* work under WINE, but it is not guaranteed (DirectX?), there are overheads, artifacts and just plain disgust.

I will be very glad to test any early versions (including source code only releases) on my Debian GNU/Linux unstable. Just mention in the News, there is some testing version available.
#14
Posted 10 January 2005 - 07:21 AM
There's no conceptual problem to get it to run. Mainly just going through all the little details of compiling the dependencies, settting up makefiles and fixing small problems (which in sum, can amount to quite a bit of work...).
Rincewind

I love boost!!! The next best thing since the invention of C++.
Reply to this topic
