MS Shows Same Game Running on Windows, Phone, Xbox

Dust off your he’s-a-Microsoft-fanboy complaints, people, because here’s yet another story praising the Redmond software giant (sorry). In case you were wondering what the Xbox Live integration on Windows Phone 7 Series (inhale, signified by a comma), meant, then Eric Rudder (what’s in a name), Microsoft’s Senior Vice President of Technical Strategy, has the answer for you – and it’s pretty impressive.

In the run-up to MIX, a lot of Windows Phone 7 Series stuff appears on the web, and this one is indeed related to that. Speaking at TechEd Middle East, Rudder showed off the same game running on a PC, Windows Phone 7 Series phone (this is getting ridiculous), and an Xbox 360. This might not sound impressive, but it actually is if you know the details.

It’s the same code running on all three platforms. That is, it’s a single project in Visual Studio, and the three platforms share 90% of the code, with each platform having input-specific code. In other words, the same game can run on an Xbox 360 and be controlled by a controller, on a Windows PC by a keyboard, and on a phone using the touch screen and accelerometer.

To add to the impressiveness factor: the game saves state between the platforms, meaning you can pick up any device and start playing – you can play the game on the bus using your phone, then power up your Xbox 360, and continue where you left off when you turned off your phone.

This is of course a major boon for developers, to be able to create a single project in Visual Studio, where 90% of the code is shared between the three platforms (in this particular case, at least), with three sub-projects covering the platform-specific bits (in this case, input). I can especially see how this would be good for small game studios: they can make a clever game, and with relatively little effort, have it run on three platforms – two of which already have a massive reach (PC and Xbox).

It’s not just games, though; Rudder mentions it can also be used in other scenarios for other types of programs. I’m not entirely sure which ones, but I assume many a developer can see the potential of this stuff. I also hope that this allows programmers to combine the devices – for instance, displaying in-game information from a game on the Xbox on your phone.

It also comes appealingly close to my vision. Scary.

124 Comments

  1. 2010-03-06 7:50 pm
    • 2010-03-06 8:25 pm
      • 2010-03-06 9:08 pm
        • 2010-03-06 9:23 pm
          • 2010-03-06 9:37 pm
          • 2010-03-06 9:57 pm
          • 2010-03-06 9:58 pm
          • 2010-03-07 2:13 am
          • 2010-03-07 7:03 am
          • 2010-03-07 8:22 pm
          • 2010-03-08 3:07 am
          • 2010-03-07 4:48 pm
          • 2010-03-08 6:50 am
          • 2010-03-07 12:13 am
          • 2010-03-07 12:34 pm
          • 2010-03-08 7:11 am
          • 2010-03-09 8:57 pm
          • 2010-03-10 12:41 am
          • 2010-03-07 2:35 am
          • 2010-03-08 5:14 pm
        • 2010-03-07 12:46 am
        • 2010-03-07 3:24 am
          • 2010-03-07 7:23 am
          • 2010-03-07 8:22 am
          • 2010-03-07 10:30 am
          • 2010-03-08 9:24 am
          • 2010-03-10 10:43 pm
          • 2010-03-08 3:22 pm
        • 2010-03-08 5:09 pm
        • 2010-03-08 5:16 pm
      • 2010-03-06 9:12 pm
        • 2010-03-06 9:43 pm
          • 2010-03-06 9:56 pm
          • 2010-03-07 2:42 am
        • 2010-03-06 9:59 pm
        • 2010-03-08 3:25 pm
      • 2010-03-06 9:37 pm
        • 2010-03-06 10:35 pm
        • 2010-03-07 12:06 am
        • 2010-03-07 12:52 am
          • 2010-03-07 6:42 am
          • 2010-03-07 7:01 am
          • 2010-03-07 9:10 am
      • 2010-03-06 10:13 pm
      • 2010-03-07 12:43 am
        • 2010-03-07 1:53 am
          • 2010-03-07 2:06 am
          • 2010-03-07 3:09 am
          • 2010-03-07 3:31 am
          • 2010-03-07 7:17 am
          • 2010-03-07 10:22 am
          • 2010-03-07 8:11 pm
          • 2010-03-07 7:13 pm
          • 2010-03-08 3:35 pm
          • 2010-03-08 7:13 pm
          • 2010-03-07 2:12 am
      • 2010-03-07 1:59 am
        • 2010-03-07 2:49 am
          • 2010-03-07 3:26 am
      • 2010-03-07 9:26 pm
        • 2010-03-08 12:50 am
    • 2010-03-07 9:18 am
  2. 2010-03-06 9:17 pm
    • 2010-03-06 9:19 pm
    • 2010-03-06 9:26 pm
      • 2010-03-06 9:27 pm
        • 2010-03-06 9:51 pm
      • 2010-03-07 2:09 am
        • 2010-03-07 2:33 am
          • 2010-03-07 2:42 am
    • 2010-03-07 8:34 am
      • 2010-03-07 9:18 am
    • 2010-03-08 5:05 am
  3. 2010-03-06 9:31 pm
  4. 2010-03-06 9:38 pm
  5. 2010-03-06 9:48 pm
    • 2010-03-07 12:34 am
      • 2010-03-07 1:25 am
      • 2010-03-07 2:14 am
        • 2010-03-07 9:25 pm
      • 2010-03-07 9:56 pm
      • 2010-03-09 1:47 am
    • 2010-03-07 2:57 am
  6. 2010-03-06 10:35 pm
    • 2010-03-06 11:00 pm
    • 2010-03-07 12:09 am
      • 2010-03-07 10:02 pm
        • 2010-03-08 12:35 am
          • 2010-03-08 6:40 am
    • 2010-03-07 9:59 pm
    • 2010-03-09 1:49 am
  7. 2010-03-06 11:14 pm
  8. 2010-03-07 12:41 am
  9. 2010-03-07 1:05 am
    • 2010-03-07 1:09 am
      • 2010-03-07 6:39 am
        • 2010-03-07 7:12 am
        • 2010-03-08 11:38 am
          • 2010-03-08 3:46 pm
      • 2010-03-07 7:01 am
      • 2010-03-08 6:44 am
        • 2010-03-08 7:19 am
          • 2010-03-08 4:40 pm
          • 2010-03-08 5:36 pm
          • 2010-03-09 1:54 am
    • 2010-03-07 3:07 am
      • 2010-03-09 1:57 am
    • 2010-03-07 7:16 am
  10. 2010-03-07 3:43 am
  11. 2010-03-07 6:55 am
  12. 2010-03-07 8:36 am
    • 2010-03-08 7:28 am
      • 2010-03-08 3:49 pm
        • 2010-03-09 5:23 pm
  13. 2010-03-07 3:37 pm
  14. 2010-03-07 3:46 pm
  15. 2010-03-07 6:18 pm
    • 2010-03-07 10:25 pm
  16. 2010-03-07 11:03 pm
    • 2010-03-08 12:57 am
    • 2010-03-08 7:34 am
      • 2010-03-08 10:33 am
  17. 2010-03-11 2:20 pm