This post has nothing to do with Canonical, just one of my own hair-brained ideas.

I was traveling into San Francisco the other day, and I had an idea I wanted to share. This is very much just an idea, and given I don’t have the time to work on it, I just wanted to share it so if someone else wants to run with it, they can.

Every Wednesday at 11am Pacific / 2pm Eastern, I do a live Ubuntu Q+A videocast. In pretty much every show someone always asks me about gaming on Ubuntu, and if it is going to be a focus for us. I think gaming is really important for Ubuntu and something we should certainly focus on more in the future. My idea is linked to the importance of gaming, but with a slightly different tack.

Not that type of gaming.

One of the wonderful elements of games consoles is that the experience is predictable every time. You pop in a disc or download a game, and you know you will get the same experience that everyone else gets. In addition to this, the development platform is consistent – game devs can share the same knowledge, techniques and approaches in building their games. This is the very definition of a platform; a predictable, definable target so that the developer can deliver a quality experience for all users.

Back in the late nineties and at the birth of the CD-ROM revolution, a new marketing standard evolved called the MPC specification. In it it defined a minimum hardware and software specification to ensure that software titles branded as MPC compatible would always run great.

As an example MPC Level 1 from 1991 was the following:

  • 16 MHz 386SX CPU
  • 2 MB RAM
  • 30 MB hard disk
  • 256-color, 640×480 VGA video card
  • 1x (single speed) CD-ROM drive using no more than 40% of CPU to read, with < 1 second seek time
  • Sound card outputting 22 kHz, 8-bit sound; and inputting 11 kHz, 8-bit sound
  • Windows 3.0 with Multimedia Extensions.

Essentially, the Playstation 3, Nintendo Wii, and XBox 360 are basically the same thing; a standard piece of hardware (and peripherals), and a standard Operating System and set of capabilities.

A child playing Duke Nukem Forever on a MPC Level 1 computer.

Now, the MPC programme didn’t really take off, and there are various reasons for that, but I am curious to see if the concept of a standardized platform still has merit. Thus, the idea…

The Idea

In a nutshell:

Define a hardware and software specification that would be branded as a gaming platform, putting Ubuntu at the heart of the story.

It could be interesting to decide on a hardware specification that provides a certain set of functionality that developers could target and profile their code on, and a defined set of software components that a given game could expect. Thus, if you find a computer with that hardware specification, and you package the software pieces up on a ubuntu-gaming-platform package, you are good to run all games designed for the platform.

There are a few interesting outcomes that could happen here:

  • For the hardware hackers among you, you could buy the hardware components and build custom set-top boxes that act as consoles for the platform. Also, hardware vendors could sell pre-built machines that consumers could run games on. The openness of the hardware platform would encourage competition and deliver low-cost hardware for the Ubuntu Gaming Platform.
  • Developers could have a standard tool-chain and set of facilities to build games, and existing Open Source games could be ported to the platform.
  • Developers would also have a consistent set of tools to share best practice and documentation about. We could build community around this platform.
  • These games could be exposed easily from the Ubuntu Software Center and if someone has the suitable hardware, they are only a click away from a set of titles that will run great on your system.
  • We could even set up an open governance board that certifies games that conform to the platform (in the same way Sony certifies and approves games for the Playstation platforms).
  • I think such a platform could also potentially attract commercial game developers’ interest too. A predictable, definable platform with many different hardware implementations that are cost effective

The end-user experience would be a set of games that they know will work well on hardware that they either buy as a console from a vendor or a box that they build themselves.

To do this we would need to standardize the hardware and software platform, brand it, and build a standard set of tools and resources to encourage developer adoption.

With the right people working on this idea, I think it could work. Thoughts?

Share This
%d bloggers like this: