Anssi said:
This seems very odd to me. I'm not sure if you meant games when you
wrote "app". However, I run commercial software on Linux on a daily
basis. I even maintain a couple of Linux boxes that run commercial
software, for electronics design. Now sure, vendors usually have a
(short) list of Linuxes they support, but that in no way means that
the software wouldn't work on other distributions. I also don't get
what these "kernel bastardizations" have to do with application
software? I really thought applications talk to an API usually.
That is correct. Most applications do not give a crap about the Kernel nor
should they. The only apps that care about the kernel are apps such as
VMWare which need kernel level stuff for proper virtualization support.
Very few other apps though fall into this category.
Games for one thing definitely do NOT fall into this category.
It is a major misconception that an application "has" to be compiled to run
under linux. No. It does not. It may be common practice to do so on many
distributions with open souce applications, but that does not mean it has
to be done.
A game only needs to link against OpenGL and OpenAL for graphics and sound.
That will work with any kernel as long as OpenGL and OpenAL is present on
the target system. Not any different than requiring DirectX on a windows
system.
As an added plus, a game using the above libraries will also work under
windows perfectly fine!
If a game also needs networking support then there are also quite a few
cross platform libraries available that can be used with commercial
applications without any issues and allow the game to run under both
operating systems with no additional work for the developer.
I personally write cross platform OpenGL and GUI code that runs on both
Windows and Linux so I personally have experience under the subject. The
only person doing any compiling is me, the developer. Compile once for each
target platform...done! Yes, it is that simple.
Currently the only distribution I officially support is Ubuntu since that is
the one I personally use. I will add testing for some of the other major
distributions in the near future and then that will be it. If someone then
comes across with some bastardized version that only consists of 0.01% of
my user base and things dont work...tough luck. Not my problem as I do need
to draw a line somewhere.
And while we are on the subject of games...Game developers actually are not
embracing DX10 like the users are. Quite the contrary actually. The whole
DX10 and Vista mess actually poses quite a problem for anyone doing DirectX
Development.
Developers Currently have the choice of the following:
- Use DX9 which is supported across the board but no DX10 level features.
Annoys the people with DX10 hardware and Vista who cant get the eye candy
they want. But at least everyone can play the game.
- Use DX10 which is only supported on high-end cards and Vista. Annoys the
people with DX9 hardware or running XP who now cannot run the game at all!
Even if a person who runs XP has DX10 hardware they still cant run the game
because DX10 is vista only. On top of that, DX10 API is so different
fundamentally no existing engine code will work with it and require a
complete rewrite at least in the DirectX portion of things.
- Use OpenGL which can do both DX9 and DX10 level features. It runs on every
operating system. It supports every video card. It is compatible with any
existing OpenGL code in engines supporting OpengGL. Every user can run the
game and eye candy is determined by the users system capabilities. Everyone
pretty much wins.
I just had a talk the other day with a friend of mine who works for one of
the major game studios and I asked him about DX10. His answer? OpenGL.
I personally would not be surprised if we see some more titles released in
the future using OpenGL instead of DirectX.
--
Stephan
2003 Yamaha R6
å›ã®ã“ã¨æ€ã„出ã™æ—¥ãªã‚“ã¦ãªã„ã®ã¯
å›ã®ã“ã¨å¿˜ã‚ŒãŸã¨ããŒãªã„ã‹ã‚‰