Many people say that the biggest holdup in Linux gaming is graphics system. But if there are plethora of games for OS X (which is UNIX and uses Open GL) then why there just isn't enough games for Linux?
Sound? Different DE?
Junayeed Ahnaf Nirjhor
On Wed 24 Oct 2012 02:11:29 PM EDT, Junayeed Ahnaf wrote:
Many people say that the biggest holdup in Linux gaming is graphics system. But if there are plethora of games for OS X (which is UNIX and uses Open GL) then why there just isn't enough games for Linux?
Sound? Different DE?
On Thu, 25 Oct 2012 05:11:29 +1100 Junayeed Ahnaf nirjhor@outlook.com wrote:
Many people say that the biggest holdup in Linux gaming is graphics system. But if there are plethora of games for OS X (which is UNIX and uses Open GL) then why there just isn't enough games for Linux?
Sound? Different DE?
Small gamer market share, historically buggy and underperforming 3D graphics drivers, no common way to sell/support.
Lots of other reaosns too. The graphics side is getting better and the Android world is driving a lot of what is in fact Linux based gaming (and Linux development work - because its a lot easy to do development on Linux and then move it onto an Android phone than try and develop on a phone)
Alan
On 10/24/2012 11:51 AM, Alan Cox wrote:
Small gamer market share, historically buggy and underperforming 3D graphics drivers, no common way to sell/support.
...and a culture based on free software. How many Linux gamers, do you think, would be willing to pay for games when so much of their software is FOSS? That's not to say that nobody would pay (Please note that not only did a fair number of Linux people buy the Humble Bundle, on the average, our payment was higher than anybody else's.) but as long as game developers think we won't, they're not going to spend (or waste, as they see it) any time on us.
On 24.10.2012 22:04, Joe Zeff wrote:
On 10/24/2012 11:51 AM, Alan Cox wrote:
Small gamer market share, historically buggy and underperforming 3D graphics drivers, no common way to sell/support.
...and a culture based on free software. How many Linux gamers, do you think, would be willing to pay for games when so much of their software is FOSS? That's not to say that nobody would pay (Please note that not only did a fair number of Linux people buy the Humble Bundle, on the average, our payment was higher than anybody else's.) but as long as game developers think we won't, they're not going to spend (or waste, as they see it) any time on us.
I also seems that many funded Kickstater projects have promised Linux support so there will be quality games coming from there.
-vpk
Small gamer market share, historically buggy and underperforming 3D graphics drivers, no common way to sell/support.
Don't forget that there are hundreds of distros, that may or may not use different versions of the same libraries. As an example, Ubuntu uses Gnome3, but not Gnome Shell, Linux Mint, which is based on Ubuntu uses a fork of Gnome2, Fedora uses Gnome3, with Gnome Shell. There are distros out there that use KDE, LXDE, and others.
Do you think software developers out there can see a return on the investment of coding for all of the different versions of DE?
Coding for Linux is vastly different from coding for OSX, simply because OSX is a single platform.
I have huge respect for what Valve are doing with Steam for Linux, and hope that this is the kick up the posterior that game developers need to realise that Linux is not only used by geeks in their parents basements any more, but sadly I will still stick with Fedora and Steam on a separate Windows device, because I think Canonical have lost sight of why they started developing Ubuntu and are now becoming more and more like Apple everyday, starting out with Unity, then the partnership with Amazon and now the "give us some money" page before you get to download the ISO.
On 10/24/2012 03:04 PM, Paul Stuffins wrote:
Do you think software developers out there can see a return on the investment of coding for all of the different versions of DE?
I haven't done any programming in many years, and when I did, it wasn't graphics programming. However, AIUI, most of it is DE agnostic. If so, this shouldn't be a factor, but of course, ICBW.
On Wed, Oct 24, 2012 at 3:48 PM, Joe Zeff wrote:
I haven't done any programming in many years, and when I did, it wasn't graphics programming. However, AIUI, most of it is DE agnostic. If so, this shouldn't be a factor, but of course, ICBW.
Probably agnostic to DE, but probably not to library or driver differences. When every customer could have a different version of a needed library, or the same version with different configure options; plus incompatible changes in audio or video drivers.
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache.
Am 25.10.2012 01:09, schrieb Alan Evans:
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache
you can not compare KERNEL modules with userland software
VMware itself does NOT recompile itself simply because it is a binary only the kernel-modules are source
On Wed, Oct 24, 2012 at 16:09:17 -0700, Alan Evans ame.fedora@gmail.com wrote:
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache.
That applies to device drivers, not user space. Differing library versions and limitations of graphics support are more likely to be an issue than the kernel.
On Wed, Oct 24, 2012 at 8:37 PM, Bruno Wolff III wrote:
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache.
That applies to device drivers, not user space. Differing library versions and limitations of graphics support are more likely to be an issue than the kernel.
Of course. I was only using that as an example. What I meant to convey (and I clearly did a poor job) was that this problem runs through the system, starting at the deepest levels. I don't even bother sending binaries to a co-worker, who uses a different distro than I do. Much easier to give him the source and have him compile against the libraries on his own system. That's just not something that's going to work for game companies who want to pay the army of specialists that they employed to produce a modern game.
On 25 October 2012 04:37, Bruno Wolff III bruno@wolff.to wrote:
On Wed, Oct 24, 2012 at 16:09:17 -0700, Alan Evans ame.fedora@gmail.com wrote:
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache.
That applies to device drivers, not user space. Differing library versions and limitations of graphics support are more likely to be an issue than the kernel.
That's true, differing desktop environments isn't so much the issue, games don't really have to touch the desktop toolkit, since they tend to use GL and other things more, but different library versions and system layouts make things difficult. You can link things statically, but even that only works up to a point. Also installation has always been a bit odd.
On Wed, Oct 24, 2012 at 7:04 PM, Paul Stuffins paul.stuffins@orqoo.comwrote:
Don't forget that there are hundreds of distros, that may or may not use different versions of the same libraries. As an example, Ubuntu uses Gnome3, but not Gnome Shell, Linux Mint, which is based on Ubuntu uses a fork of Gnome2, Fedora uses Gnome3, with Gnome Shell. There are distros out there that use KDE, LXDE, and others.
Do you think software developers out there can see a return on the investment of coding for all of the different versions of DE?
TSK TSK TSK You must have missed the part where the OP said "Games". I can´t think of any games that MUST depend on a given desktop environment. What most games need is a rectagular hole in the video display and access to the OpenGL graphics subsystem... even better, hardware accelerated full screen mode...
FC
On 24/10/12 23:04, Paul Stuffins wrote:
"give us some money" page before you get to download
the ISO.
iirc, they're not breaking any freedom by doing so. They are asking for a donation, as does many projects on Sourceforge.
On 25 October 2012 08:25, Ian Malone ibmalone@gmail.com wrote:
On 25 October 2012 04:37, Bruno Wolff III bruno@wolff.to wrote:
On Wed, Oct 24, 2012 at 16:09:17 -0700, Alan Evans ame.fedora@gmail.com wrote:
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache.
That applies to device drivers, not user space. Differing library versions and limitations of graphics support are more likely to be an issue than the kernel.
That's true, differing desktop environments isn't so much the issue, games don't really have to touch the desktop toolkit, since they tend to use GL and other things more, but different library versions and system layouts make things difficult. You can link things statically, but even that only works up to a point. Also installation has always been a bit odd.
Oh, and sound, the weird state of sound for years was a problem too. Games are supposed to be fun, too much end user configuration to get them working puts people off before you've started.
On Thu, 2012-10-25 at 12:37 +0100, Ian Malone wrote:
Oh, and sound, the weird state of sound for years was a problem too. Games are supposed to be fun, too much end user configuration to get them working puts people off before you've started.
The few brief years that I put up with Windows, and the many more where I've observed others, makes me firmly believe that if you want to play games, you really need to use a games console. It's built for it, the games are built for it, there's no being stuffed around by sound and graphics card drivers, and the whole thing is in one convenient portable box hooked up to your TV with a larger screen than your computer.
Even on the most prolific OS, Windows, sound and graphics are the two main problems, and it looks like they always will be. Then there's the issue that only the game players with money will have a computer system with a good enough graphics cards. The average PC tends to have a rather average graphics card.
On Thu, Oct 25, 2012 at 1:32 AM, Alan Evans ame.fedora@gmail.com wrote:
Of course. I was only using that as an example. What I meant to convey (and I clearly did a poor job) was that this problem runs through the system, starting at the deepest levels. I don't even bother sending binaries to a co-worker, who uses a different distro than I do. Much easier to give him the source and have him compile against the libraries on his own system. That's just not something that's going to work for game companies who want to pay the army of specialists that they employed to produce a modern game.
In my humble opinion.... (humble but strong ;)... that´s what Java is for. :) to isolate app development from the underlying complexities of each system. With OpenJDK 7 on almost every distro, soon OpenJDK 8, and JavaFX -soon to be fully open source, see below- things will only get better.
http://java.dzone.com/articles/major-javaone-announcement
Not many people say it, but the VM in Android is one of the reasons of its appeal (even while Google forked the java platform by doing their own Davlik VM), and why Android apps don´t need to be recompiled for every Android device or OS variation...
FC
In my humble opinion.... (humble but strong ;)... that´s what Java is for. :) to isolate app development from the underlying complexities of each system. With OpenJDK 7 on almost every distro, soon OpenJDK 8, and JavaFX -soon to be fully open source, see below- things will only get better.
I don't know any serious games producer who considers Java anything but a comedy item. Having written stuff using the ghastly java on phones I can see why.
http://java.dzone.com/articles/major-javaone-announcement
Not many people say it, but the VM in Android is one of the reasons of its appeal
Almost all the game stuff is written as mostly native code. Android actually has the same underlying problems as every other platform (Mac included)
- varying CPU power - different graphics drivers with different bugs to work around and different performance problems
In the Linux space what the games people seem to be doing now is realising that they should just replace "Linux" with "Ubuntu" and they'll cover all the general end user bases, and the techie oriented distros will work out themselves how to to make it work 8)
Alan
On 25 October 2012 13:20, Tim ignored_mailbox@yahoo.com.au wrote:
Even on the most prolific OS, Windows, sound and graphics are the two main problems, and it looks like they always will be. Then there's the issue that only the game players with money will have a computer system with a good enough graphics cards. The average PC tends to have a rather average graphics card.
As someone who still keeps a windows install to play games occasionally, and at the risk of very wildly off-topic, a new PC with an average graphics card can handle most games (but not at the highest settings, because, what do you expect?). Low end graphics cards are quite a long way down in performance. There is a bit of a difference in that when games get put on PC they (at the moment) get higher definition graphics than the consoles because the platform can handle it, though that can leave the lower end people in the cold. Of course the fact the games on Windows are often about 2/3rds the price of console ones does begin to bite eventually too.
On Thu, Oct 25, 2012 at 9:49 AM, Alan Cox alan@lxorguk.ukuu.org.uk wrote:
I don't know any serious games producer who considers Java anything but a comedy item.
Oh RLY? I expected that sort of prejudiced comment... that´s why I had the following link up my sleeve... We were talking mobile...
Web gaming technologies: Angry Birds’ cross-compiled Java http://www.2ality.com/2011/05/web-game-tech.html
"That is, you write your game in Java and then can cross-compile it to Desktop Java, a webapp (via Google’s GWT), Android, or Flash. Quite impressive, even though some platform-specific code is always necessary. Creator Ray Cromwell gives a few more details:
The game is built on an abstraction (ForPlay) that allows it to use the optimal path for each browser. If WebGL is present, it uses that in order to achieve the highest framerates. If not, it falls back to 2d canvas, which is accelerated by the GPU on browsers these days, but not always guaranteed to be *fully* accelerated.
It is written in Java, developed and debugged as a Java desktop app, and then cross-compiled at the end step via GWT. Many things in the native version have been converted to more web friendly data formats, for example, data that was in XML or LUA format was converted to JSON."
There´s also http://jmonkeyengine.com/ http://jmonkeyengine.com/engine/
...So now I sit back and grin. ;-)
FC -- During times of Universal Deceit, telling the truth becomes a revolutionary act Durante épocas de Engaño Universal, decir la verdad se convierte en un Acto Revolucionario - George Orwell
On Thu, 25 Oct 2012 10:14:36 -0300 Fernando Cassia fcassia@gmail.com wrote:
On Thu, Oct 25, 2012 at 9:49 AM, Alan Cox alan@lxorguk.ukuu.org.uk wrote:
I don't know any serious games producer who considers Java anything but a comedy item.
Oh RLY? I expected that sort of prejudiced comment... that´s why I had the following link up my sleeve... We were talking mobile...
For desk accessories like angry birds maybe - but its too slow for things like physics engines in "real" games.
Alan
Hi,
I don't know any serious games producer who considers Java anything but a comedy item.
Oh RLY? I expected that sort of prejudiced comment... that´s why I had the following link up my sleeve... We were talking mobile...
For desk accessories like angry birds maybe - but its too slow for things like physics engines in "real" games.
Nowadays most talk about "java too slow" is just prejudice and/or obsolete information, from the platform early days.
There are a few benchmarks that shows java fast enough (and actually faster than similar C apps) and there are also a few java game engines for FPS in the market.
I'll leave for the readers to google them. :-)
During the old days of JavaME (pré-smartphones) there were a lot of interactive action games written in Java. Of course this doesn't compare to PC, Playstation and X-Box games.
Most Android games, including someones pretty heavy on phisics, are written in Java, but I guess this doesn't count as they use Android APIs (not portable) and the non-standard Android VM (can't remember the name), not the standard JVM.
The biggest problem for Java in action games are GC pauses. But it looks like they found a way around that. And of course the fact that most Windows games need/use DirectX which isn't availabe on the JVM. But it looks they got nice results using OpenGPL-like APIs and hadware acceleration in more recent JVMs.
Java could be a really nice platform for games, but Sun/Oracle/etc focused on the "EE" edition, the SE/ME editions didn't evolved quick enough to make a real impact on the games and desktop market. :-(
[]s, Fernando Lozano
On Wed, Oct 24, 2012 at 5:00 PM, Reindl Harald wrote:
Am 25.10.2012 01:09, schrieb Alan Evans:
Apple is essentially single-platform and Microsoft at least tries to keep things backward-compatible. The Linux kernel devs seem, at least to the uninitiated, to have some kind of animosity to the very idea of ABI compatibility.
Witness VMWare basically recompiling itself every time the user updates his kernel. No game developer wants that kind of headache
You seem to have missed my mea culpa about using the kernel as an example, but...
you can not compare KERNEL modules with userland software
I can if userland suffers from the same kind of problems, which was my point.
"Failed to load application foo because library bar-1.12.5.0 was not found." Checking my libs directory, I see that I have bar-1.12.5.7. So I make a symbolic link and hope for the best, but no: Program foo now segfaults because the libbar devs changed some function prototype. And it was doomed to fail anyway because my distro ships libbar with CONFIG_GARBUNDING_GRABULATORS=off when it was compiled.
VMware itself does NOT recompile itself simply because it is a binary only the kernel-modules are source
I didn't say that it recompiled *all* of itself.
On Thu, Oct 25, 2012 at 10:52 AM, Fernando Lozano fernando@lozano.eti.br wrote:
Java could be a really nice platform for games, but Sun/Oracle/etc focused on the "EE" edition, the SE/ME editions didn't evolved quick enough to make a real impact on the games and desktop market. :-(
Things are moving forward quite nicely. Check out the latest work to :
1. Open Source JavaFX 2.0 (OpenJFX) 2. Make JFX 2.0 part of Java8 / OpenJDK 8 http://goo.gl/yPwLF 3. Modularize the JRE (sorry I don´t remember the exact name they use) http://julien.ponge.info/notes/building-openjdk8-with-jigsaw/ 4. Port OpenJDK with hardware gfx acceleration to ARM http://labb.zafena.se/?p=514 5. Decent 3D Apis in OpenJDK8-JavaFX http://goo.gl/KdWe2
Since it´s gonna be all open source, more devs will likely come.
But anyway... my point was that a JVM (like OpenJDK, the JRE or Davlik, even while they don´t want to call the latter that, it´s still technically a JVM ;), gives a nice abstraction layer so that game devs can focus on game dev without caring about the intricacies of the underlying OS... and they can code a single game then support Android-desktop Linux-mobile Linux (think OpenJDK over Jolla? -formerly MeeGo), and Mac OSX, in addition to desktop windows... just like the AngryBirds guys did...
Regards, FC