Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×

Microsoft Demos Three Platforms Running the Same Game 196

suraj.sun writes with this excerpt from Engadget: "Microsoft's Eric Rudder, speaking at TechEd Middle East, showed off a game developed in Visual Studio as a singular project (with 90% shared code) that plays on Windows with a keyboard, a Windows Phone 7 Series prototype device with accelerometer and touch controls, and the Xbox 360 with the Xbox gamepad. Interestingly, not only is the development cross-platform friendly, but the game itself (a simple Indiana Jones platformer was demoed) saves its place and lets you resume from that spot on whichever platform you happen to pick up."
This discussion has been archived. No new comments can be posted.

Microsoft Demos Three Platforms Running the Same Game

Comments Filter:
  • Not Cross Platform (Score:5, Insightful)

    by Foofoobar ( 318279 ) on Sunday March 07, 2010 @12:29PM (#31391436)
    Technically thats same platform, different devices. Cross platform would be if they had the running on iPhone, Windows 7, Playstation and Linux. THAT would have been impressive (not to mention newsworthy).

    We expect them to be pushing studd across their own platforms. Not news.
    • Re: (Score:3, Insightful)

      by Vermyndax ( 126974 )

      Yep, you beat me to it. I was going to comment... how is this cross-platform? It's all Windows technologies and .NET. That's hardly cross-platform. Show it to me on Windows, Linux, Mac, Wii, Xbox and PS3 and that'll be something to post an article about.

      • Re: (Score:2, Funny)

        by DeKO ( 671377 )

        Remember, one of the definitions of cross platform is that it still works after a system restart.

      • It's cross-platform in a sense that desktop Windows, and Windows CE (Mobile / Phone / ...) are two different OSes. Not "distros", but OSes - different kernels, different userlands, different APIs.

    • by UnknowingFool ( 672806 ) on Sunday March 07, 2010 @01:08PM (#31391888)
      Funny thing about the "cross-platform" comment is the employee is admitting something that MS has tried to obscure from consumers: Their different product lines are not using the same OS. Techies have long known that Windows Mobile isn't anything like Windows desktop or their Xbox 360 OS. Whereas their competitor Apple is using OS X variants for their computers, iPhone/iPod Touch, and now the iPad, MS has tried to leverage the "Windows" name brand by putting it on different software in name only.
      • by CliffH ( 64518 )
        Aren't all three platforms based on .NET with variances in the build for the specific architecture? They've done in essence what Sun has been trying (and succeeding in numerous ways) of building for one platform and distributing to many. .NET is Microsoft's JAVA. This isn't surprising, it is EXPECTED!!! Ok, done with my rant. Please, move along....
      • Even shows the code loaded into Visual Studio. He's not talking to "consumers". And since when did Microsoft ever claim, even to consumers, that all there OSes were the same on all devices? Consumers couldn't care less about whether a phone OS is the same as a PC OS.

        • by jimicus ( 737525 )

          Even shows the code loaded into Visual Studio. He's not talking to "consumers". And since when did Microsoft ever claim, even to consumers, that all there OSes were the same on all devices? Consumers couldn't care less about whether a phone OS is the same as a PC OS.

          Technically Microsoft haven't claimed that it was the same OS on all devices.

          They've used a similar name for totally different products and let ignorant tech "journalists" (if you can call them journalists) do the rest. Though I note they haven't exactly gone out of their way to correct these tech "journalists".

    • Technically thats same platform, different devices. Cross platform would be if they had the running on iPhone, Windows 7, Playstation and Linux. THAT would have been impressive (not to mention newsworthy).

      We expect them to be pushing studd across their own platforms. Not news.

      The device is part of the platform, so it is cross platform, just weakly so. OTOH, I have no idea why you think what you describe would be 'newsworthy.' I can run a GUI app with OpenGL written in python on my Mac, Windows, and Linux

    • By your definition of platform, sure.

      Unfortunately, you have a strict, non-standard interpretation of 'platform' that doesn't fall in line with pretty much the entire rest of the world.

      MS, and most of the world has come to believe cross platform means hardware platform OR software platform. FreeBSD 7 is one platform, FBSD 8 is another.

      You're definition doesn't match with the majority of the rest of the business world. Its kind of hard for you to communicate effectively with them if you don't understand wh

    • That sounds insightful, but it's not. First off, PC's, the Xbox, and Windows Mobile devices all run completely different operating systems. There is no common Windows kernel that they all use. So they ALL are different platforms. Second, radically different hardware can be considered to be a different platform even if the OS is the same. The software that you can use on a 3 inch screen is going to be a lot different that what you would use on a 15 inch screen.
      • by S.O.B. ( 136083 )

        By that definition Sun did this with Java about 15 years ago and IBM has been doing this with VM since 1972.

        Anyone impressed by this "new, ground breaking technology" from Microsoft should immediately cancel their Slashdot account and tear up their geek membership card.

        • by jimicus ( 737525 )

          By that definition Sun did this with Java about 15 years ago and IBM has been doing this with VM since 1972.

          Anyone impressed by this "new, ground breaking technology" from Microsoft should immediately cancel their Slashdot account and tear up their geek membership card.

          I dunno. Microsoft finally catching up with the rest of the world is most certainly news.

          It'll be even more newsworthy when they do so in a fashion that isn't completely half-assed.

    • Not to mention, a lot of titles (like Fable II) only show up on XBox360 regardless of how easy PC-XBox360 development is.

      This really doesn't signal anything.

    • By this definition ARM, PowerPC, and x86 are all the same platform. This is inaccurate.
  • Interestingly, not only is the development cross-platform friendly, but the game itself (a simple Indiana Jones platformer was demoed) saves its place and lets you resume from that spot on whichever platform you happen to pick up."

    Great! Can't wait til they have this at the BlackBerry app store.

    Oh, you didn't really mean what we normally mean by "cross-platform" then?

  • Meanwhile... (Score:4, Insightful)

    by Sarten-X ( 1102295 ) on Sunday March 07, 2010 @12:35PM (#31391518) Homepage

    A simple demo game written on a Fedora system runs perfectly on Ubuntu, Debian, Mandriva, Mint, Arch, and a few dozen others, but nobody paid for a press conference.

    • Re:Meanwhile... (Score:4, Informative)

      by tepples ( 727027 ) <.tepples. .at. .gmail.com.> on Sunday March 07, 2010 @02:16PM (#31392626) Homepage Journal

      A simple demo game written on a Fedora system runs perfectly on [other Linux operating systems], but nobody paid for a press conference.

      Unless the game was developed using the Allegro library. Distributions that switched to PulseAudio broke sound in Allegro games because PulseAudio does not like unsigned 16-bit PCM.

    • by dave562 ( 969951 ) on Sunday March 07, 2010 @02:53PM (#31392980) Journal

      And the 0.02% of the global video game playing market rejoiced!

    • Re:Meanwhile... (Score:5, Insightful)

      by jim_v2000 ( 818799 ) on Sunday March 07, 2010 @05:13PM (#31394294)
      You fail. All of those distributions are still Linux. Windows XP/7, Windows Mobile, and Xbox are not all running Windows. They are all entirely independent code-bases that were developed separately.
      • Re: (Score:3, Informative)

        by drsmithy ( 35869 )

        Windows XP/7, Windows Mobile, and Xbox are not all running Windows. They are all entirely independent code-bases that were developed separately.

        This is not correct. The XBox [360] OS is a Windows NT fork (from Windows 2000, IIRC, or maybe XP).

    • A simple demo game written on a Fedora system runs perfectly on Ubuntu, Debian, Mandriva, Mint, Arch, and a few dozen others, but nobody paid for a press conference.

      Yeah, well, that's part of the problem, isn't it?

      It's only a slight exaggeration to suggest that the Linux distros that have money, visibility and marketing muscle don't do gaming - or don't do gaming particularly well. PulseAudio fixes and workarounds [fedorasolved.org]

  • by Joe The Dragon ( 967727 ) on Sunday March 07, 2010 @12:36PM (#31391532)

    So now pc games will be Dumbing down to the phone level.
    And If you think that deus ex 2 was bad with that then this may even worse.

    And will this lock out user maps and mods.

    • No, rather PC games are becoming console games because that is what gives publishers the most revenue. Why keep supporting a game with user maps when you can release a new game with a few new weapons and maps and charge the full price? Why allow for mods when you can release DLC?
    • Its already started - Supreme Commander 2, which I hoped would be a perfect extension of SupCom1.. turns out to be dumbed down game designed specially for the XBox. I've heard comments from people that they won't even bother pirating it, let alone buying it.

      This is the new world order - dumbed down for the phone is next.

  • Cross platform? (Score:5, Insightful)

    by owlstead ( 636356 ) on Sunday March 07, 2010 @12:50PM (#31391684)

    Oh, my god, he's displaying this and he has all these #ifdefs and "copies of projects" within his workspace and a "shared resources" folder for the game. Is that the future of cross platform? That's more like the PAST of cross platform. The way to do this is to create interfaces for the same object and implement that using different devices. What you don't want, ever, is to have all this different execution paths through your code using #ifdefs to instruct the compiler to compile each and every one of them separately.

    • by Simon80 ( 874052 )
      Amen, mod parent up. This advice isn't Microsoft-specific, it's simply the right way to go in general.
    • Re:Cross platform? (Score:4, Insightful)

      by pitdingo ( 649676 ) on Sunday March 07, 2010 @01:17PM (#31391986)

      Yeah, i do not get it. What is so special about this? Looks primitive to me, and you still do not have a cross platform solution yet. I can make that game even easier and truly cross platform....HTML, Javascript and CSS. Sure there needs to be some hacks to support broken browsers like IE, and yeah it will run in a slow browser like IE, but it the same code runs on Windows, OSX, GNU Linux, Iphone OS (touch, ipad, iphone), Blackberry, Windows BMW 7 Series (sorry could not resist), Solaris, Palm Web OS, etc...

    • by syousef ( 465911 )

      Oh, my god, he's displaying this and he has all these #ifdefs and "copies of projects" within his workspace.

      You clearly missed the #ifdef MARKETING_BULLSHIT

    • Re:Cross platform? (Score:5, Insightful)

      by Anonymous Coward on Sunday March 07, 2010 @03:06PM (#31393106)

      I guess you've never actually used XNA, but feel qualified to talk about it regardless.

      The reason you have ifdefs in XNA projects are not because you need to ifdef everything from the graphics API to the networking API and so on. The ifdefs exist, because the different platforms it works across have different capabilities. You do not have an XBox 360 controller on Windows 7 phones, and you do not have a touch screen or keyboard on the XBox 360, the fact is the platforms DO have differences and they simply have to be catered to one way or another, the method used really works just fine and has no disadvantages- go and actually have a play with XNA rather than just whining about it.

      The doesn't detract from the fact though, that all your rendering, networking, audio, concurrency, IO, physics, game code and so forth are shared between them.

      A lot of people are talking it down as been there done that, but has it really? Well no, it hasn't. The great thing about Xbox live is the profile system and how everything connects back to it- they're just taking that across other platforms, you should be able to buy a game on XBox live arcade and play it wherever you are and that's the goal, simply put this hasn't really been done yet. The closest we've had are flash games and other web based games, but they're limited in performance, and are limited in ability. Even the likes of Steam hasn't stepped away from Windows yet, and only just seems to be creeping across to the Mac, there's no sign of it going to Linux, or phones, or media players, or consoles any time soon, if ever. This is a big deal, because it means you can continue to play your games wherever you are, and it makes it piss easy for developers to do it, you no longer need graphics abstraction layers and so forth like you used to.

      Really, if this is not cross platform, and if this is the way of doing things in the past then tell me, where can I find a phone, console, and computer that let me play the same game and move between them without having to manually copy saves, without having to buy a different copy of the game for each platform, without having to care about anything technical, and which makes full use of graphics hardware and isn't some crippled web implementation of something.

      What's that you murmured? no such thing currently exists. So this IS in fact a major step forward? thought so.

      I love how Slashdot goes idiotic about things when Microsoft is involved, but if this was Apple they'd be masturbating all over the screen because Apple has created something else that "just works" even though when it's Apple it's inherently crippled, and uses a dated horrible language like Objective C.

      • by mikael ( 484 )

        Oh, if only you had not posted as anonymous coward, I could have dazzled you with my wisdom...

        You do not have an XBox 360 controller on Windows 7 phones, and you do not have a touch screen or keyboard on the XBox 360, the fact is the platforms DO have differences

        We can appreciate that. But you should not allow the API to the hardware to go beyond the input classes of your game. There is always going to be a point where the hardware events (keyboard press/release, controller press/release) are read or proces

      • You can work fine without #ifdefs anyway you spin it. If you control the platform then you should have an API that lets you explore the capabilities of the system. After that it is as easy as switching in the classes.

        It's not the time anymore where a virtual call takes so much of your CPU that you have to revert to #ifdevs. And if you still need #ifdefs because the capabilities do not map to specific modules/classes then the design is worthless.

        At my company we've banned #ifdefs except for very specific cas

      • Where can I find a computer (OS) console and phone all made by the same company .... there is only one Microsoft, all allegedly run "Windows", and give the same (or similar) experience, and all were designed to be compatible with each other.... so my question, is why did this not work before?!

    • YAY! Let's lecture the mutlibillion dollar software company about how to make software in a veiled attempt to show other Slashdotters how much we know about the RIGHT way to program!

      You can collect your gold star on your way out.
  • For those nerds equally confused, I'm pretty confident that they just mean the hardware platform, since all devices seem to be using some kind of Windows & .NET. So the software platform is more or less the same. It just shows how you can store and load save games from the .NET using different hardware platforms.

    • Dont justify their intentional obfuscation
    • Even so, how is it news? I could understand if Apple were to show OS X running well on non-Apple hardware, and implying that it may be legally allowed in the future. That's news. Windows and Windows programs have been running on myriad hardware combinations for years, with few problems (if we ignore Vista). This is not news.

  • by FunkSoulBrother ( 140893 ) on Sunday March 07, 2010 @01:02PM (#31391816)

    Make it happen for Civ 5, so I can play the same game on the TV at home, switch to the laptop when the wife wants to watch TV, then switch to the phone in the bathroom at work! My life would be complete.

    • Takeing civ 4 as guide no phone will have the power run it at any good speed also the small screen will make it hard to play.

      • Well, in all seriously, I don't care what they do to it graphically. The game would be just as much fun if a grassland was a unanimated green square, mountains were gray, etc. Civ 1 was 320X200 wasn't it? My phone has a better screen, and more processor/RAM than my 486/33 where I played Civ1. I have no idea how CPU intensive the math that calculates all the moves and AI logic is in Civ4 though.

    • by santax ( 1541065 )
      Video Girls Strip-poker would probably benefit from this too! Come to think of it, so would my marriage.
  • by PaladinAlpha ( 645879 ) on Sunday March 07, 2010 @01:08PM (#31391890)

    I can see where this is news for Microsoft, king of platform-specific APIs. For those of us accustomed to developing using, say, SDL and OpenGL, this isn't news at all, as a properly written program using said libraries will need literally zero changes between several platforms. The input bit is tricky, but 90% reuse is low, I would think.

  • Virtual Machine? (Score:2, Insightful)

    by wmspider ( 1333299 )
    Wow, they actually got a .NET program working on several different microsoft operating systems! Now, seriously, where's the news? .NET runs on a virtual machine. It's just like showing a Java game that "magically" works on several differnet PLATFORMS (and with Java they can be called platforms, a program running on several different microsoft products can hardly be called cross-platform).
    • I said it before and I'll say it again, you seriously consider ARM, PowerPC, and x86 the same platform? If you're a programmer I want your license revoked.
    • Wow, they actually got a .NET program working on several different microsoft operating systems! Now, seriously, where's the news? .NET runs on a virtual machine. It's just like showing a Java game that "magically" works on several differnet PLATFORMS (and with Java they can be called platforms, a program running on several different microsoft products can hardly be called cross-platform).

      Well, I can see one obvious difference. Say, can you write a game in Java that will readily run on any of the major gaming consoles out there, with no need for the player to muck around with anything (like, say, installing Linux on PS3)?

  • this isn't cross-platform, it's an example of an incestuos codebase. Cross-platform means your code can cross os boundaries too. Java, python and perl are examples of cross-platform computing.
  • God almighty, their code base is more fragmented than I ever imagined.

    Even at the worst of the "UNIX wars", if you had to rewrite as much as 10% of your code to get it to run on (say) AIX, SunOS, and System V that meant you'd done a really bad job of isolating the platform-specific parts of your code. If Microsoft can't keep their code bases in sync when they control all of them and they have incentive to do so, they're really slipping.

  • Unless it can run on OSX and Linux as well, a consumer game is NOT 'cross platform'. Apparently, their development platform needs some work.
  • cross platform:

    Windows, Windows and Windows.

    yipee!

  • This story reminds me of a text book I once purchased that was about cross platform programming using windows. What I failed to realize until after I purchased it was that the platforms were Windows 95, 98, NT 3.51 and NT 4. Also what is so impressive about saving data that is not dependent on the platform, or are microsoft still simply dumping memory and calling it a file format?

  • The simpler the game, the easier it is to pull it off. E.g. a game that only needs one button and basic OpenGL, is very easy to port everywhere.

  • Playing something on 3 windows based machines isn't cross platform.
  • our game engine has about 10% of platform specific code, and it runs on about 6 platforms (and we actually count windows, linux and mac as 1). it's actually pretty standard. especially in this case, probably all the input, filesystem, memory, threading apis are pretty much the same (they're probably still doing 3 different renderer implementations). is anyone really impressed by this?

  • Ok, I actually think this is kind of cool. But I would quibble about the way they use #if's on the code. In general, you should avoid #if PLATFORM (the video shows #if WINDOWS_PHONE) and instead do the conditional on a particular feature. So instead:

    #if WINDOWS_PHONE
    #define ACCELEROMETER_SUPPORTED
    #define TOUCH_SUPPORTED
    #endif
    :
    #if ACCELEROMETER_SUPPORTED
    :
    #endif
    :
    #if TOUCH_SUPPORTED
    :
    #endif

    This makes life easier when touch becomes a popular feature on laptops and desktop computers, for example.

  • Q. What would you do if you had a million compilers?

    A. Two chips at the same time

You know you've landed gear-up when it takes full power to taxi.

Working...