Slashdot Mirror


Port DirectX Games to the Mac

tassii writes "MacCentral reports that Coderus' MacDX provides PC game developers with a way of moving that DirectX code to the Mac without having to rewrite it from scratch. Coderus claims that most code which uses DirectX can simply be recompiled and linked to the MacDX libraries. Maybe I can finally play the full Command and Conquer series."

25 of 53 comments (clear)

  1. This is bad by IshanCaspian · · Score: 5, Insightful

    The DirectX api is cumbersome and very proprietary. This just gives more developers reason to stick with DirectX. I would much rather see work put into expanding the featureset of OpenGL to include some of the more advanced features that have to be implemented as hacks. Even though the OpenGL featureset is a bit behind directx, it is a pleasure to work with, and so I hate to see anything that undermines the reasons for adopting it.

    --

    But there is another kind of evil that we must fear most... and that is the indifference of good men.
    1. Re:This is bad by kwerle · · Score: 5, Insightful

      Yeah, we should totally keep developers from easily porting games that work on 90% of the worlds computers. We should take away their choices, not give them more. Totally. I so agree with you.

      Oh, wait. That was what the evil-me would have said. Really, I think making it easy to port games is a good thing. I don't give a crap what API folks use, just so long as I get to play the damn game on my bitchin' mac hardware.

      Just as soon as OpenGL 'catches up', and game programmers start flocking to it, I won't give a shit - just as long as I get to play the damn game on my bitchin' mac hardware.

  2. And another thing... by IshanCaspian · · Score: 5, Insightful

    This will undermine the potential for games on linux. If the Mac market can be addressed using DirectX, there's less reason to develop opengl apps, which are portable to linux.

    --

    But there is another kind of evil that we must fear most... and that is the indifference of good men.
    1. Re:And another thing... by gl4ss · · Score: 2

      ..or just use wine, and contribute to it..

      --
      world was created 5 seconds before this post as it is.
    2. Re:And another thing... by kwerle · · Score: 3, Interesting

      I thought that there was an effort to 'port' directX to linux as well. Which would be a great win for linux...

    3. Re:And another thing... by kwerle · · Score: 5, Interesting

      Why is adapting a Windows standard a "great win for linux?"

      Leading is not done by following.


      You're right. But standing still is even worse than following (as MacOS proved for years and years). It seems clear to me that linux is not leading in many respects - gaming APIs being one, market position being another. Even if they had the best damn gaming APIs in the world, unless those APIs were ported to Windows, it would still be a losing proposition.

      Providing software compatability is a great win for linux. OpenOffice is a great example of that. SAMBA is another.

    4. Re:And another thing... by WatertonMan · · Score: 4, Insightful
      People write for markets they can make money at. Right now while many games make huge profits, many others lose money. If you are investing a lot of time and effort you'll probably develop for the market with the best return on your investment. That is Windows games and likely the various consoles. OSX follows a distant third and even there are usually ports done by subcontracted Mac developers. (And they usually are inferior, unfortunately) Linux is a distant, distant market.

      Sorry, but it is the truth.

      The problem has less to do with DirectX vs. OpenGL than it does code reuse and other such issues at the gaming companies.

      Put an other way, if you think that porting DirectX means fewer games for Linux, you are simply being naive. The reason games don't come to Linux is much more complex.

  3. I hope this speeds up porting... by osxuser-02 · · Score: 5, Insightful

    I hate going to the software store and seeing a Mac game for 49.95, then seeing the same title in PC format in the 9.99 sale bin.

    --

    I went to college for this?...

  4. Worthless,... by Brother+Tshober · · Score: 4, Insightful

    ... if they don't include support for DirectPlay. There are already a lot of good games for the Mac, but most of them lack network support for mixed win/mac network games.

    The latest example: The PTW addon for Civ3. It's not yet decided if there will be a port for the mac, because the main problem is the DirectPlay based network of the windows version.

    And since network gaming seems to be the place, the gaming industry is heading, imho there is a need for an free network-api, which is designed for gaming, like directplay.
    There's OpenGL, OpenML, now who will create OpenNL for OpenNetwerkLibrary ?

    1. Re:Worthless,... by Graff · · Score: 5, Informative
      And since network gaming seems to be the place, the gaming industry is heading, imho there is a need for an free network-api, which is designed for gaming, like directplay. There's OpenGL, OpenML, now who will create OpenNL for OpenNetwerkLibrary?

      There is one already. It is called OpenPlay. Here is a quote from the site:
      What is OpenPlay? OpenPlay is a cross-platform network abstraction layer designed to simplify the task of creating programs which communicate across multiple computers.

      While originally designed for multiplayer games, it is useful for any developer who wants an easy, platform-independent way to send messages to programs running on other machines. It completely abstracts both OpenTransport and Winsock, and its plug-in architecture makes it easy for you to support new transport protocols.

      The Myth series uses OpenPlay, as well as some other games
    2. Re:Worthless,... by schwatoo · · Score: 2, Informative

      The Myth series did not use OpenPlay. Myth 1 used Bungie's own network code. Myth 2 user "Uber" which was written partly by Bungie and partly by Apple (the exact details are unclear). Not sure about Myth 3. OpenPlay on it's own is incomplete - it is not a full game networking API. So work was done to wrap the old Mac OS NetSprocket API over the top. Various games use that API. Personally I think OpenPlay is a pretty awful API - very incomplete, very buggy and rather useless. For example on Mac OS X it still uses the OpenTransport API for networking, instead of talkign directly to POSIX sockets which OpenTransport is actually sitting on top of anyway. So if you use OpenPlay on Mac OS X the chances are there's 3 or 4 layers between you and the actual networking. NetSprocket -> OpenPlay -> OpenPlayPlugin -> OpenTransport -> POSIX Sockets. It's much better to write your own custom network code on top of Posix sockets (or the new carbon network API). Yeah you don't get the benefit of using a standard API - but when the standard is so awful it's better to write your own custom code. (SDL experts please chime in and talk about any SDL network APIs).

      --
      I have trouble with passwords among other things.
  5. sdl. by gl4ss · · Score: 4, Informative
    what you're looking for/would liek to see world use is something like sdl.

    Simple DirectMedia Layer is a cross-platform multimedia library designed to provide fast access to the graphics framebuffer and audio device. It is used by MPEG playback software, emulators, and many popular games, including the award winning Linux port of "Civilization: Call To Power." Simple DirectMedia Layer supports Linux, Win32, BeOS, MacOS, Solaris, IRIX, and FreeBSD.


    since i didnt see anyone else replied/posted with this mandatory link i did, whoring an' all. the recent starcon2 port uses sdl as well, and thus wa s quickly available on very many platforms instantly.
    --
    world was created 5 seconds before this post as it is.
  6. WinOS2, Win32S on OS/2, WINE, API shift, next... by dpilot · · Score: 5, Insightful

    Perhaps this is a necessary Evil, perhaps it's a poison pill. The jury is still out on Wine and its various ilk, but for OS/2 it was clearly a poison pill.

    What's needed is a way to walk the knife-edge down the middle. Perhaps a *good* WINE is just what we don't want. Perhaps a WINE that can be tweaked to do just a few critical things really is living on that knife edge.

    Maybe WinOS2 was just too good at running Win3.1 apps, or at least the perception was too good.

    As long as WINE isn't perceived as good enough, it will be viewed as only a crutch. WinOS2 was perceived as 'good enough' to neglect a native version, even if enough market was anticipated.

    It also remains to be seen how MacDX will be perceived. Hopefully only as a crutch, and a reason to then consider OpenGL and SDL as better solutions.

    --
    The living have better things to do than to continue hating the dead.
  7. Genius! by AlphaOne · · Score: 4, Interesting

    This is pure genius folks... it's like using Microsoft's own stuff against them.

    I know at least ten Mac users who have said that they keep a Winblows box around to "play games."

    VirtualPC is handy, but it just plain sucks when it comes to doing high-end graphics (or, better said, just plain doesn't do high-end graphics).

    Everyone is saying its endorsing a Microsoft "standard," but if you think about it it could take people off the Windows desktop, which is really our goal anyway.

    So Microsoft gets to license a high-speed graphics library. So it sorta endorses the XBox. Who cares... they don't have monopolies in these areas.

    --
    All opinions presented here aren't mine.
  8. I don't want it nor need it. by lbrt · · Score: 2, Insightful

    If DirecX becomes the only modern graphics library available, we have lost much from our freedom. If all popular computer entertainment would use DirectX, think about the power Microsoft would have.

    As long as people keep making good OpenGL games - such as the recent uDevGames contest winner - were safe.

    *lbtr

  9. Let's Not Get All Doom and Gloom by thedbp · · Score: 4, Interesting

    while this seems like it has the potential to slow adoption of opengl, i doubt that all the big-name mac porting companies will suddenly go out of business. there are often multiple versions of games, and it is quite conceivable that these repackaged 'deluxe' editions will be full opengl ports as opposed to just recompiling directx code. this just means we'll see more simultaneous releases, and also that many directx developers will get a taste of opengl... they'll have to keep a mac around to test it on you know ;)

    i think it will work more for opengls benefit. it in effect extends mac-pc compatibility in a very striking way.

    1. Re:Let's Not Get All Doom and Gloom by thedbp · · Score: 2

      your silly capitalization is a frivolous thing, and i challege it forthwith. it holds no appeal for me, nor does it's so called "function" outweigh my disdain for your imperialistic letters. viva le caps petit!

  10. Dear god by MoneyT · · Score: 2, Insightful

    Directx is Satan spawn. I would hate for this to be the primary graphic base for games on my mac

    --
    T Money
    World Domination with a plastic spoon since 1984
    1. Re:Dear god by Textbook+Error · · Score: 3, Informative

      Directx is Satan spawn. I would hate for this to be the primary graphic base for games on my mac

      I hate to break it to you, but this technique (a wrapper that implements Direct3D/Draw/etc on top of OpenGL) is the primary graphic base for games on your Mac. Every Mac porting house already has their own set of libraries to do just this, it's just none of them have bothered to make them public like MacDX.

      The real market for this is for PC developers, and it remains to be seen how many of them will actually take the bait and try and port titles over themselves (making money off developer tools is a real challenge, as you're selling to the very people who could write it themselves :-).

      There are a lot of other issues you need to consider when doing a port (endian-swapping is the biggest time sink normally, followed by code using VC-- "extensions", then platform specific issues - working around bugs in OpenGL on 9 which will never be fixed, etc), and the code which talks to DirectX is normally a pretty small part of a game's code base.

      --

      Nae bother
  11. Yeah, but by IshanCaspian · · Score: 3, Insightful

    If windows developers were using something more portable than directx, you'd be getting your games anyways...and they'd be on linux...and the programmers would have a more elegant, and less restricted API. Some choices are easy and beneficial in the short run, but damaging in the long run. Do we really want to give Microsoft control over the API's that all game developers use?

    --

    But there is another kind of evil that we must fear most... and that is the indifference of good men.
    1. Re:Yeah, but by kwerle · · Score: 4, Insightful

      If windows developers were using something more portable than directx, you'd be getting your games anyways...and they'd be on linux...and the programmers would have a more elegant, and less restricted API.

      And just as soon as someone writes this thing of beauty, developers will flock to it because it is better (yeah, right). Meanwhile, I just don't care. Making games easier to port is a good thing.

      Some choices are easy and beneficial in the short run, but damaging in the long run. Do we really want to give Microsoft control over the API's that all game developers use?

      M$ doesn't control any of the APIs that developers use (well, on the PC platform, anyway - xbox may be another story). Developers use APIs that M$ controls. There is a difference. Developers can chose not to use M$ API anytime they like. It turns out that they don't care about making their programs portable to the other 7% (or whatever), and that DirectX is the best thing for writing to windows. If there is a library that will allow them to port trivially to MacOSX, I hope they will find it worth their while. Until this magical, bitchin', non-M$ API appears, this is our best bet.

    2. Re:Yeah, but by Anonymous Coward · · Score: 2, Interesting

      "the programmers would have a more elegant, and less restricted API."

      These less restricted APIs would also be less robust and most likely suffer from performance problems. Part of the reason that Microsoft extends it's APIs and meta formats is not only to raise the cost of exit (smart move, not matter what industry)...It also allows them to add features whenever the hell they feel like it without waiting for some standards body to confer and agree on it. This is part of the reason OpenGL is currently lagging behind DX.

  12. Re:WinOS2, Win32S on OS/2, WINE, API shift, next.. by Alex+Thorpe · · Score: 3, Interesting

    I've read posts from some major Mac game programmers/porters on this topic. This won't have a major effect on their work, as Westlake and Contraband and other Mac porting houses have their own methods of converting from DirectX already. What this will do is help some PC-centric game developers make a Mac version in-house. Whether or not they'll do a good job isn't a given, of course. Personally, I doubt this will have a major effect on Mac game publishing.

    --
    "Common Sense Ain't" -Unknown
  13. SDL SDL SDL by Slur · · Score: 3, Interesting

    When it came time to pick an API to develop our new game my project team picked SDL + OpenGL hands-down. We never even considered DirectX. Now that there's a company offering a DirectX-compatible library our answer is the same: No thanks, DirectX! We like SDL. We love OpenGL. We like sharing our work.

    But for existing games that were written to the DirectX APIs this should be a great boon. I'd definitely like to see Mac OS X versions of all those games that would otherwise never appear on the Mac.

    Incidentally, there's an SDL version of Abuse out there. Has anyone been able to get it to compile and run on Mac OS X yet??

    --
    -- thinkyhead software and media
  14. Mac game Developers/Porters already have similar c by AHumbleOpinion · · Score: 2

    Mac game developers/porters already have similar code. With the exception of DirectPlay, "emulating" DirectX with GameSprockets and OpenGL has been a quite successful strategy for years now. Developers who target Mac along side PC, and porting houses who are hired by developers who just farm it out, already have their Win32/DirectX compatibility libraries, or a neutral library that maps to DirectX and GameSprockets/OpenGL.

    The market for this product is pretty much new developers who are not going to farm out the port.

    [Apologies for the accidental AC post]