Unity for Pandora


Well the canoo, the wiz and the pandora are people who will buy games. Not sure how many were sold. But I think quite a few. And there are few native games out for this devices, and the people who bought it are gamers. If you include a compile button for unity for games, all old games developers made can be sold. Maybe just a 10.000-20.000 users, but hey 5$ a game sounds not so bad, if your only cost is to click on the compile button. If you released 5 games or something you can get a lot of money with a single button. And you would pay a few thousand dollars for the plugin to get this button.


And you get raspberri pi for free too.


Max Payne war released for android lately. Not sure how expensive a native linux arm port is, but since there is a native x86 port, I don't think is that much work.

Android is 1 OS platform.


Linux represent 187458734913 different incompatible OSes.


different CPUs


different kernels


different user space programs


different libs


different video drivers


different GPU 3D drivers


different X11 servers


different window managers


and the list goes on...


just for sound you got OSS, ALSA, PulseAudio, to name a few current ones, and whatever new audio API someone will come up with next year.


and as if plain "Standard" Linux wasn't hard enough, the OpenPandora default OS has some really messed up particuliarities that diverge greatly from the average Linux boxen.


so

And you get raspberri pi for free too.
no you don't.


Linux is not compatible with another Linux.
 
Last edited by a moderator:
What? If you compile your program with opengl (es) and alsa it virtually runs everywhere. You can just install the missing libs by yourself. The handling is done by the gpu driver.
 
Last edited by a moderator:
Linux is not compatible with another Linux.
Yeah, I'm calling shenanigans. Supporting multiple flavours of Linux is pretty simple provided you pick your libraries appropriately. Use SDL and you don't have to care about whether it's got OSS, ALSA, or Pulse on the backend, and the purpose of 3D APIs like OpenGL is to abstract away from the GPU entirely. Unless you're doing something needlessly complex, the only necessary incompatibilities you should encounter are the CPU and the physical screen size, everything else is abstracted out to various libraries. That's why programs compiled for the Pandora's native Angstrom run under Slackware as well, why apps built for the Gnome desktop can still run in KDE and vice versa, why running Fedora applications on Ubuntu require nothing more than making sure you've got the right library versions.
 
What? If you compile your program with opengl (es) and alsa it virtually runs everywhere. You can just install the missing libs by yourself. The handling is done by the gpu driver.

Linux is not compatible with another Linux.
Yeah, I'm calling shenanigans.


[...]


Use SDL and you don't have to care about whether it's got OSS, ALSA, or Pulse on the backend, [...]


[...] require nothing more than making sure you've got the right library versions.

HAHAHAHAHAHAHAHA!


Gotta love how FOSS & Linux fan-boys quickly fall out of touch with reality.


I thought this was a thread about Unity, not SDL.


Unity is a commercial game engine, its not Free Open Source Software and the target market of games made with Unity is definitely NOT people who know how to mess around for 3 days in library and package dependency hell to get the game they just bought working.


Binary compatibility in Linux is nearly nil.


Don't turn this into a holy war on how great and awesome FOSS and Linux are, they are, but the reality on this planet is that bills have to be paid, and money has to come from somewhere and large game companies sell game BINARIES to make money.


Therefore, in their view:


Linux is not compatible with another Linux.


and that's it.


and yes, apparently I DO NEED TO PUT EXPLICIT EMPHASIS ON THOSE WORDS or else someone comes along say how great and portable things are in the open source world in a thread about a closed source and/or commercial engine and derail the whole thread into a FOSS holy war.


I'm talking from the point of view of commercial game studios, but fan boys will only hear what they want... *sigh*
 
I thought this was a thread about Unity, not SDL.
It is. I was addressing the very general (and very wrong) statement you made "Linux is not compatible with another Linux."


Now, if you had said "Unity compiled for one flavour of Linux won't necessarily run on a different flavour of Linux" then you might have had a sufficiently specific statement to argue, but you didn't; you went with an extremely broad and falsifiable statement of fact. You were wrong to say it, and you're wrong to try and justify saying it.


Even if we assume you meant to talk just about Unity, you're still wrong because everything I said still applies: if the existing Linux port of the Unity engine utilizes standard libraries such as (but not necessarily limited to) SDL, OpenGL, and GTK, then it could quite easily be compiled directly for output to the Raspberry Pi, and the resulting binary would almost definitely be executable on the Pandora. I even gave evidence of this mentioning that most applications compiled specifically for the Angstrom build run just fine on Slackware, and even a few of the applications we are currently running came from the Debian-for-ARM repository proving that it is entirely possible to write an application targeting one Linux that runs on another.


So I ask you, why do you think Unity would necessarily be different? What makes you so sure that if Unity added Pandora output that the binaries wouldn't be compatible with the Raspberry Pi, or vice versa?
 
and yes, apparently I DO NEED TO PUT EXPLICIT EMPHASIS ON THOSE WORDS or else someone comes along say how great and portable things are in the open source world in a thread about a closed source and/or commercial engine and derail the whole thread into a FOSS holy war.


I'm talking from the point of view of commercial game studios, but fan boys will only hear what they want... *sigh*

Perhaps your point needed to be clarified rather than made more dickishly.
 
Oh, I'm sorry, I've been selling Linux applications (and Windows, and OSX, and a dozen mobiles) for more than 10 years; its interesting to note one of my earliest Linux binaries still runs on todays distributions..


1) I used to staticly link some libs, and ynamicly link others (you do _not_ want to staticly link libc for example, since it is customized for each distribution.. for for some random zip library say, you might static link it just to make things a 'sure thing' down the road, since it doesn't need to update perhaps..)


2) But in general most popular distributions include _many_ older versions of a library, so that ABI changes over time do not break older linekd applications.


3) You think Windows doesn't have dll hell equal to or wose than linux? You're dreaming ;)


Linux, like Windows and OSX and PS2 and so on .. if your app (Unity derived or otherwise) is well built, it should last for many years without concern. If not, you're doing something wrong. Granted, its easy to do something 'wrong', or once in awhile you just get bitten.. but in general, it is not nearly so bad as you imply.


Hell, I've run the SDL based Sid Meier's Alpha Centauri for Linux from the CD that came in the box.. the port by Loki games.. it was aournd what, 12 or 13 years ago? It _runs_.


jeff


edit: To wit, we have put some thought into this.. there _is_ some responsibility on the distro builders.. if a distro only includes the latest versions of libraries and tools, it breaks older things (unless those older apps include all the libs they need, be they dyncamic or static linked); we do not suggest apps include everything, since every app would be huge. Also, given NAND flash is limited in size, we cannot include every possiuble version of thigns in the firmware. So the implications are a few.. in Pandora, the firmware will update a library if it is ABI compatible so existing pnd apps keep working; if it is ABI incompatible, then possibly the old and new versions of a lib can be included. But eventually over time, thje firmware included libs/versions will max out for the space we wish to give them, so at some point new apps have to include latest versions of libs in the pnd, if they want the new features. This is the same as on all operating systems, for all of time. You have to live with these sorts of issues on every OS as a developer.
 
Last edited by a moderator:
Well Heroes of Newerth, Savage 2 and Savage run on each Linux I tested it (even 32 and 64 bit). They come with their own libs in their folder and are just a binary blob which extracts itself. Not sure why they should not run, a x86 linux is a x86 linux, doesn't matter if debian or redhat. You can avoid lib problems if you ship your own libs. And the linux people put software in the distro with the right packages of the libs if you want to use the system libs. I am not sure if you are a troll.
 
Last edited by a moderator:
.. if the existing Linux port of the Unity engine utilizes standard libraries such as (but not necessarily limited to) SDL, OpenGL, and GTK, then it could quite easily be compiled directly for output to the Raspberry Pi, and the resulting binary would almost definitely be executable on the Pandora.

Damn good point, and true.

..its interesting to note one of my earliest Linux binaries still runs on todays distributions..

Yup, same here, and then there is http://icculus.org/fatelf/ ..
 
Last edited by a moderator:
Back
Top