OS Neutral Why don't PC games come to Mac, and why when they do it takes forever?

Discussion in 'Mac and PC Games' started by Dekema2, Dec 2, 2014.

  1. Exhale, Dec 8, 2014
    Last edited: Dec 8, 2014

    Exhale macrumors 6502

    Joined:
    Sep 20, 2011
    #26
    1) Marketshare. Too low.

    2) Of this marketshare, an overwhelming amount is laptops. Not ideal for games.

    3) Of these laptops, the overwhelming amount are the cheapest models. Discrete GPUs are commonly missing.

    4) Until recently, the GFX API on OS X was antique. Barely competitive with D3D9.

    5) Apple's OGL implementation is well known to be inefficient. Windows doesn't have a real one, instead its implemented by the GPU driver. Windows machines can commonly handle instructions sets the hardware cannot. Its the inverse on OS X, where you commonly have hardware features you cannot reach due to the software.

    6) OGL 2.x is well known to be quite messy to work with, and this until very recently is all OS X supported.

    7) Because of all of the above, many games are written in D3D. Especially games which require their own engine. Good D3D developers are therefore easy to find. Good OGL developers are not.

    The net result is basically that making games for OS X meant making games for a minority market, with on average weaker computers, using older and less efficient APIs and inferior developers.

    When graphics is a significant contributor in marketing - especially in AAA titles - its simply is a no-go.
     
  2. edddeduck macrumors 68020

    edddeduck

    Joined:
    Mar 26, 2004
    #27
    I'd say that's a pretty low feature on the list of things you could ask for if you are a Mac gamer. Given that almost all Mac's are single GPU apart from the super expensive MacPro and all of the portable machines apart from the most expensive use Intel graphics the lack of Crossfire for AMD cards isn't the biggest driver of performance.

    Even the low end iMac is powered by an Intel card these days, improving the performance of Intel drivers will impact a massive number of Mac users with possibly marginal frame rates giving them better frame rates, adding Crossfire will make people with already good frame rates to have better frame rates.

    I'd say for the overall community improved Intel driver performance would be a bigger overall impact to end users. Then again I might be veering off topic a little.

    Edwin
     
  3. antonis macrumors 68000

    antonis

    Joined:
    Jun 10, 2011
    #28
    Yes, h/w wise they haven't even touched the context called "gaming" - they never did. I'm just saying that regardless the possibility of releasing a game-oriented computer (which seems to be light years far from being real), the very same Mac (which is forced with dual GPUs) is night and day between OS X and Windows. The very same drivers Apple is providing via bootcamp (e.g. without even installing the catalyst drivers from AMD) offer Crossfire on Windows, while this is totally ignored on OS X side.

    I'd expect, though, that they would provide a proper support for such an expensive machine. Crossfire is not a small detail in my opinion, as most of the times doubles the graphics performance. They offer a h/w ready machine for that, they also offer the windows drivers that enabled this functionality, but on OS X ? Nothing. It's just shows the mentality they keep having on this matter, IMO (which also makes a perfect explanation of all the other features they miss, as you so many times have rightfully pointed out).
     
  4. marksatt macrumors regular

    Joined:
    Jun 26, 2013
    Location:
    Epic UK
    #29
    Only one Mac has shipped with dual GPUs in recent memory, so it is hardly surprising that Apple don't support a CrossFire/SLI equivalent. Technically you could distribute OpenGL commands across both GPUs - that is supported - but it is hard to make efficient. It is more important from a business perspective to get games working on mobility GPUs than multi-GPUs even under Windows. As edddeduck points out, improving drivers on the common Macs would be a far better strategy for Apple & gamers in the immediate future. As Windows PC sales become ever more skewed toward laptops it might eventually even be an advantage for them. The days of making AAA games for the hardcore PC crowd alone are gone.

    Obviously every game developer would like to be using a low-overhead graphics API and Apple's Metal for iOS certainly fits the bill, but as I stated earlier it doesn't really matter what the graphics API is. A really good games/graphics programmer will get the best out of whatever technology is available. I've met my fair share who work with OpenGL just as effectively as D3D, across Frontier, Feral and Epic. So, in the immortal words of the Constructicon Bonecrusher: "Who are you calling inferior?"
     
  5. 0x100 macrumors regular

    0x100

    Joined:
    Nov 11, 2014
    Location:
    Japan
  6. antonis, Dec 10, 2014
    Last edited: Dec 10, 2014

    antonis macrumors 68000

    antonis

    Joined:
    Jun 10, 2011
    #31
    The small number of nMPs in Apple ecosystem should not be an excuse for Apple, in my opinion. Under the same logic, Apple itself has a very small market share compared to PCs, so why game developers even bother with Mac ?

    Let's be frank here. The ball is in Apple's court (always had been). As it is now, Mac is not an attractive platform for game creators. Here's what Apple lacks:

    - Better gpu drivers for all Mac models
    - Crossfire support (for a freaking h/w that is forced with dual gpus)
    - Catch up with most recent openGL features
    - a Mac model with a desktop gpu (other than nMP), even user replaceable
    - A more game-friendly API on OS X (e.g. metal) in order to attract game developers and compete with windows performance

    All these points are valid. Also, none of these points work against the other, so I don't see why Apple should choose the ones from "the top of the list". If they ever want to get serious about Mac gaming they should work on all of the above. The competition already has all of the above established, and in a very mature state. Apple should go all the way, or resign from the idea entirely; they can't compete by offering half-solutions.

    As things are right now, Apple is actually pushing their users to use Windows for that matter. I'd be very interested to know how many users that use OS X for their main workflow, have also bought a Windows license.
     
  7. koyoot, Dec 10, 2014
    Last edited: Dec 10, 2014

    koyoot macrumors 601

    koyoot

    Joined:
    Jun 5, 2012
    #32
    What is the deal with mobile GPUs? They are the same as desktop parts, but mostly with lower voltage and clocks.

    GT650M and GTX650 - the same GK107 chip in both cards. Difference? Clocks and voltage.

    Radeon M290X and Radeon R9 270X. Difference? Clocks and voltage.

    PCs that are sold right now in biggest quantities are laptops. People dont bother with desktop if they can game on console, OR buy a laptop, and in USA the most popular laptops are Apple laptops.

    Market is growing and growing for Apple, and we know that people who own an Apple computer are more willing to pay for software - including games, compared to PC market.

    So why? Why would bother developers with porting games for OSX?

    Cause its hard. OSX lacks graphical APIs that save money and time for programming a game for this platform. It wasnt an issue years ago, when games were small, and teams needed to make a game were counted in double digits. Right now its sometimes 1000 people working on ONE project. And the average team is around 150 people. And none of these people are willing to waste time on making OSX version of the game. Riot Games spend 1 year in just porting their game client to OSX. Get the scale of problem in development we get.

    That is why I believe Metal/Mantle will change things a bit. It will ease the development process. Even Microsoft with DX12 is implementing FULL Mantle inside DX12. They have to. Otherwise they would be way behind every other platform that is there right now. The developer base of teams supporting Mantle will grow, and is growing right now. The benefit of it we could see on Apps using Metal on iOS.
     
  8. marksatt macrumors regular

    Joined:
    Jun 26, 2013
    Location:
    Epic UK
    #33
    Which makes them less powerful than the similarly numbered desktop equivalents - sometimes only 1/2 as fast. Obviously you understand enough to make an informed choice about such things - but many folks assume that the same model numbers mean the same performance and with mobility vs. desktop this isn't true.

    The Mac market is growing and yes Mac users will pay more for software, while the Windows gaming market is only stagnating at best. For big publishers the tipping point where they feel they can reliably make the sales to justify long-term investment doesn't appear to have been reached yet though. I'm sure edddeduck and Blair would know much more about the size of the audience now than I do, but Epic have proper Mac & Linux versions of UE4, tools & all, which wasn't the case before.

    Making a Mac version isn't any harder than adding support for any other platform, but every platform requires work and if the financial reward isn't worth the developer time to a publisher they won't authorise it. Then they'll turn around and license it out to a third-party, whose corporate overheads may be lower, but whose programmers are definitely not less valuable or talented. Such is the logic of big business.

    And yet, here I am, an experienced, well qualified professional games developer who not only cares about developing Mac games but is actively working on the Mac version of Unreal Engine 4. I've worked on enough titles to understand the scale of the problem and usually it correlates pretty directly to the quality of the codebase, far more so than the graphics features of the platform you are trying to target. So long as the target platform has the necessary minimum features it can be done. It is whether it will make the publisher a sufficient return.

    In this we agree. Of course, there's currently no immediate need as D3D 12 has yet to ship either and Mantle being restricted to Windows/AMD makes it much less appealing.

    There's only so many developers and so many hours in the day for any company, Apple included, so you have to prioritise.

    Improving driver performance & feature-sets on millions of Macs is a far better use of developer time than implementing automatic multi-GPU rendering on the few Mac Pros they've sold. It'll certainly provide a bigger boost to UE4 for a lot more users. This is especially important as right or wrong Apple seem to have defined their target market as consumers rather than gamers, so I don't expect to see Macs, other than the Mac Pro, with desktop GPUs again. If multi-GPU rendering becomes really, really necessary then they can add it later.

    Someone mentioned this earlier - Bootcamp was ultimately a smart move for Apple as it allows them to focus on developing OS X on their own timescale & not be beholden to anyone's demands but their own. You might not like it - but it has clearly worked. I'd be unsurprised if most Mac gamers have a Bootcamp partition.
     
  9. Solomani macrumors 68030

    Solomani

    Joined:
    Sep 25, 2012
    Location:
    Alberto, Canado
    #34
    This is hopeful! I'd love to play another Unreal Engine game (natively ported, of course) for the Mac. Last one I played (that was native port) was UT 2004 Edition, so long ago.
     
  10. ArtOfWarfare macrumors 604

    ArtOfWarfare

    Joined:
    Nov 26, 2007
    #35
    First off, LOL @ you for thinking EA makes games. You're not a gamer if you think they do. They make movies with minimal interaction which they then market the hell out of as games for non-gamers.

    Second, the companies who don't port games from PC to Mac waste their budgets and time making lousy engines.

    I don't have it on hand, but I recall reading an interview from an EA Sports manager who said that there was one team dedicated to writing a rendering engine for their soccer game and another dedicated to writing a rendering engine for their baseball game. The soccer game rendering engine would have features like "renderSoccerBall()" while the baseball game rendering engine would have "renderBaseball()". That means that both teams essentially did the same thing (rendering a ball is rendering a ball - it's not freaking rocket science and you don't need a dedicated function for each type of ball) - EA ends up with twice as many problems as necessary by having stupid divisions in their workforce like that.

    Here's the thing though: Making a Game Engine isn't the same as Making a Game! The engine itself has to deal with gritty low level code and drivers and what not. Proper games instead consist of higher level scripts which use the engine to do the heavy lifting. Proper games don't deal with rendering and physics and stuff - all of that is handled by the engine.

    A good game engine can be used to make any game.

    The scripts themselves are cross platform.

    So all that needs to be done is the game engine needs to be made cross platform.And all of the good ones are. The problem is the crappy proprietary engines made by companies like EA, who have way more money than they know what to do with, so they enjoy burning it on useless things, such as making game engines that only they will use.

    Here's a comparison of current game engines which is put into terms that someone with no knowledge of programming should understand:
    http://ezjones.github.io/what-if-game-engines-were-cars/
     
  11. Michael Goff macrumors G4

    Michael Goff

    Joined:
    Jul 5, 2012
    #36
    Hating EA still makes you cool around here?
     
  12. antonis macrumors 68000

    antonis

    Joined:
    Jun 10, 2011
    #37
    Well, yes and no. I see this as a razor with 2 edges. Since Apple pushes gamers to install Windows, it will be even harder to eventually convince them that Mac is also an equally gaming-capable platform (if it will ever be such).

    It was a smart move, in order to convince people that they won't have to resign from gaming when buying a Mac. But there's also a backfire to this.
     
  13. marksatt macrumors regular

    Joined:
    Jun 26, 2013
    Location:
    Epic UK
    #38
    We aren't quite there yet but: https://wiki.unrealengine.com/Unreal_Tournament
     
  14. MasterRyu2011 macrumors 65816

    Joined:
    Aug 22, 2014
    #39
    It's funny huh...the opposite is happening in the mobile arena. There are tons of more games for iOS than there are for Windows Phone.
     
  15. edddeduck macrumors 68020

    edddeduck

    Joined:
    Mar 26, 2004
    #40
    Mark Satt answered most of the points very well but I'll just add a little bit. Games are written in DX because it was custom designed for gaming (and nothing else) it is the primary render API on the most popular console of the previous generation and the most popular home PC operating system. Programmers like to choose the easiest solution that gives the best solution and DX provided that though the focused API and strong Microsoft support for developers.

    If we take your logic above that developing games on the Mac you have to deal with "weaker computers, using older and less efficient APIs and inferior developers" if this is true this means the developers would have to overcome a lot of handicaps to get the games running on a Mac at even a close approximation of the Windows titles. And yet it happens and the Mac gets modern games, that's a pretty big logical hole :)

    I've spent over a decade looking at game code and working with programmers and there is no difference in the skills of console, Windows or Mac programmers. A good programmer is a good programmer, there is a learning curve when you transfer platforms but if someone has the skills to be a good game programmer they can do their thing on any platform. Some of the most impressive code and solutions I have seen are by programmers under resource pressure of some kind be that APIs, Memory etc. I have met a few outstanding developers over the years who can blow me away with their fixes and coding and I can safely say they have all shown they can jump platforms with ease.

    Without making Mark's head grow to much ;) he's a good example of a programmer who I have seen jump platforms and systems without it being a big deal. :)

    Edwin
     
  16. roadbloc macrumors G3

    roadbloc

    Joined:
    Aug 24, 2009
    Location:
    UK
    #41
    Um... what?!? :confused:
     
  17. antonis macrumors 68000

    antonis

    Joined:
    Jun 10, 2011
    #42
    Yes, it's exactly the opposite indeed. On iOS, Apple provided the most attractive platform for game development; they took care of both the h/w and the s/w for this.
     
  18. koyoot macrumors 601

    koyoot

    Joined:
    Jun 5, 2012
    #43
    Repost from other forum:
    4th gaming console based on AMD APUs. Could this be Apple?

    That would change gaming industry as well as anything else. Especially Apple and OSX.

    They already have iTunes Store, and Mac App store, so that type of device would be great for living room.

    Right now everybody: Sony, MIcrosoft, Google, Nintendo have hardware and their own platform.

    Again, could this be Apple's idea?
     
  19. Exhale macrumors 6502

    Joined:
    Sep 20, 2011
    #44
    Not really. Getting it running isn't difficult. Getting it running well is, and theres hardly a shortage of under performing OS X versions.
    (WoW & DOTA 2 to name two prominent titles)

    And again - as developers get more used to working with a specific combination of tools, the quality improves. The PS3 is another example of a notoriously difficult kit to work with - and the difference in quality from the initial to final years of that console are quite dramatic.
     
  20. hiddenmarkov macrumors 6502a

    Joined:
    Mar 12, 2014
    Location:
    Japan
    #45


    They do have a point actually. They really do like QTE (quick time events). I mean really really like. To the point even I go so when do I actually get play to this game not scripted to pressing the say E key at certain moments.

    Maybe I want to dodge left, run away a bit and kite the enemy firing from some range. I can't...I will stand toe to toe with the enemy and I will press the E key when prompted or face the consequences.

    Death by QTE what I call this really. I have seen whole segments of games use it. And to me its just a sign of crap game design. It saves on development effort. As there can only be one outcome to the whole event. Makes it real simple for them. Modelers, skinners and graphics aren't eternally hunting down and refining the game to resolve say clipping issues. Its all prerendered. Press E...bring up next prerendered scene, oh they switched it up G key now, prerendered scene.


    I tbh have given up on AAA by and large and given my money of late to indy game devs. I will take less than polished graphics from say Unity engine mixed with great storyline that says we know if you wanted to play typing of the dead you'd be playing that. And they let you play the game....strange concept these days I know.
     
  21. Yebubbleman macrumors 68030

    Yebubbleman

    Joined:
    May 20, 2010
    Location:
    Los Angeles, CA
    #46
    Games that are not explicitly coded to work on both platforms out of the gate (with a few exceptions) are coded first for Windows to utilize DirectX, which does not and will likely never exist for Mac. The code utilizing DirectX needs to be rewritten to instead use OpenGL.

    That being said, back in the PowerPC days, this also entailed coding for a different processor architecture. So, while the process is much simpler now (given that it's still x86/x86-64 on both ends), moving from DirectX to OpenGL is still something that needs to be done and is often, still, a time-consuming task.

    At least, that's my understanding of it.
     
  22. marksatt macrumors regular

    Joined:
    Jun 26, 2013
    Location:
    Epic UK
    #47
    Usually the original developer/publisher will target more than one platform - Windows, Xbox & Playstation are the usual suspects. Windows & Xbox use very similar (but entirely the same) versions of Direct3D, while Sony provide something roughly equivalent, normally closer to D3D than GL (the failure that was PSGL notwithstanding). That usually means the first thing a developer has to do is write a cross-platform wrapper API ;)

    Not many folks remember that and it really could be problematic. It even was for Western developers first transitioning from x86 PCs to the then-PPC Xbox 360 & PS3 consoles back when they were new. Not that it matters now in the desktop gaming world of x86_64.
     
  23. Huntn macrumors G5

    Huntn

    Joined:
    May 5, 2008
    Location:
    The Misty Mountains
    #48
    Are they rewritten to use Open GL directly or is there a OpenGL translator program added that converts DirectX commands to OpenGL commands amounting to more game overhead?
     
  24. edddeduck macrumors 68020

    edddeduck

    Joined:
    Mar 26, 2004
    #49
    WINE like systems have run time translation which is why a native port is usually a much nicer experience.
     
  25. Yebubbleman macrumors 68030

    Yebubbleman

    Joined:
    May 20, 2010
    Location:
    Los Angeles, CA
    #50
    I would imagine directly, but I wouldn't know. All I know is that DirectX to OpenGL has always been an issue for developers of Mac ports to pre-existing PC games and that this hurdle didn't change when Apple switched their processor architectures from PowerPC to x86.
     

Share This Page