Jump to content


Can This Game Run In Linux?


13 replies to this topic

#1 Guest_alan_*

Guest_alan_*
  • Guests

Posted 12 October 2004 - 08:44 AM

Can this game run in linux?

#2 red knight

red knight

    Xenocide Project Leader

  • Xenocide Inactive
  • 3,310 posts

Posted 12 October 2004 - 10:23 AM

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.

Greetings
Red Knight
Sourceforge Nick: flois - Federico Andres Lois
Visit my blog at: flois.blogspot.com

Posted Image

Pookie cover me, I am going in.

#3 Vaughn

Vaughn

    Squaddie

  • New Forum Members
  • PipPip
  • 4 posts

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.

#4 Vaughn

Vaughn

    Squaddie

  • New Forum Members
  • PipPip
  • 4 posts

Posted 03 January 2005 - 02:49 PM

Oh, and Red Knight, seeing as you're a developer:

Considering what I've just said, modulo the truthfulness of those statements, would you be willing to accept to huge changes required to remove all traces of Windows-dependence from the codebase?

#5 Micah

Micah

    Colonel

  • [[Administrators]]
  • PipPipPipPipPip
  • 2,290 posts

Posted 03 January 2005 - 03:03 PM

An would you, Vaughn, be willing to sacrifice 3 hours a day for the next year to help us do the things you 'require'? If someone was willing to join our project and help make said changes, great, but we don't have time to do it ourselves. Our programmers are busy enough just trying to make this windows version. Of course, I am not one of the programmers, but I am basing my thuoghts off of their statements.

By the way, the alpha is currently working well with opengl rendering. It actually looks better than the dx9 rendering at the moment.

#6 mindstormmaster

mindstormmaster

    Programming Department

  • [Xenocide Senior Members]
  • 402 posts

Posted 03 January 2005 - 03:20 PM

We never promised the game would be easy to port to Linux, nor did we promise that it would run in Linux to begin with. We're always looking for people to help out, and if you want to help contribute to the project and help make it more Linux compatible, you're more than welcome.

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.
Posted Image

#7 guyver6

guyver6

    Captain

  • Xenocide Programming Department
  • 599 posts

Posted 03 January 2005 - 03:56 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.

<{POST_SNAPBACK}>

I think I can say something on our windows dependance.
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
Posted Image
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.

#8 Vaughn

Vaughn

    Squaddie

  • New Forum Members
  • PipPip
  • 4 posts

Posted 03 January 2005 - 05:25 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.

#9 rincewind

rincewind

    Programming Department

  • Xenocide Programming Department
  • 541 posts

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.

<{POST_SNAPBACK}>


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
Posted Image

I love boost!!! The next best thing since the invention of C++.

#10 Vaughn

Vaughn

    Squaddie

  • New Forum Members
  • PipPip
  • 4 posts

Posted 04 January 2005 - 07:35 AM

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)

#11 dan2

dan2

    Xnet Proof Task Force

  • Xenocide Inactive
  • 561 posts

Posted 04 January 2005 - 02:49 PM

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)

<{POST_SNAPBACK}>

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.

Oh, sorry, you're talking about something for Windows. Nevermind

Edited by dan2, 04 January 2005 - 02:51 PM.


#12 mikon

mikon

    Squaddie

  • Forum Members
  • PipPip
  • 2 posts

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.

#13 x0563511

x0563511

    Sergeant

  • Forum Members
  • PipPipPip
  • 72 posts

Posted 10 January 2005 - 02:51 AM

You can't use SDL instead of DirectX?

Besides, opening it up for linux might encourage more developers to join.

#14 rincewind

rincewind

    Programming Department

  • Xenocide Programming Department
  • 541 posts

Posted 10 January 2005 - 07:21 AM

In theory all of the libs we use run under linux and the source "should" be written so it compiles very easily under linux.
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
Posted Image

I love boost!!! The next best thing since the invention of C++.



Reply to this topic