CB: We work really closely with Mac game developers, especially Blizzard, Transgaming, Valve, Feral, Aspyr, Telltale, and Unity. I type like #$%@, so I'm on the phone with folks from these companies all the time. I sometimes joke that the phone is my best coding tool. Fundamentally, the only way users get a good out-of-the-box (or out-of-the-download) experience is if we work with game developers to resolve issues before the games ship. We worked for over a year with Blizzard on making sure everything worked in Starcraft 2. This included integrating a completely new shader compiler for the Radeon X1600 and Radeon X1900 cards! When Transgaming was working on Command and Conquer: Red Alert 3 they told us they need us to support hardware accelerated texture fetches from within vertex shaders, so we added this support. When Feral shipped Bioshock our QE team practically functioned as an extension of their testing group, feeding back bug reports on the beta hardware and drivers that we had access to. Laminar Research has dropped us beta versions of X-Plane which we have included in our automated test suite, so we can make sure we don't have any performance regressions on any of our nightly builds. The Unity engine folks have done the same thing.
IMG Interviews AMD's Mac 3D Manager
#1
Posted 29 September 2011 - 05:46 AM
CB: We work really closely with Mac game developers, especially Blizzard, Transgaming, Valve, Feral, Aspyr, Telltale, and Unity. I type like #$%@, so I'm on the phone with folks from these companies all the time. I sometimes joke that the phone is my best coding tool. Fundamentally, the only way users get a good out-of-the-box (or out-of-the-download) experience is if we work with game developers to resolve issues before the games ship. We worked for over a year with Blizzard on making sure everything worked in Starcraft 2. This included integrating a completely new shader compiler for the Radeon X1600 and Radeon X1900 cards! When Transgaming was working on Command and Conquer: Red Alert 3 they told us they need us to support hardware accelerated texture fetches from within vertex shaders, so we added this support. When Feral shipped Bioshock our QE team practically functioned as an extension of their testing group, feeding back bug reports on the beta hardware and drivers that we had access to. Laminar Research has dropped us beta versions of X-Plane which we have included in our automated test suite, so we can make sure we don't have any performance regressions on any of our nightly builds. The Unity engine folks have done the same thing.
#2
Posted 29 September 2011 - 06:14 AM
Alex Delarg, A Clockwork Orange said:
the Battle Cat said:
Late '09 27 inch iMac, Core i5 Quad 2.6Ghz, 12GB RAM, ATI Radeon HD4850 512MB, 1TB Hard Drive
#3
Posted 29 September 2011 - 02:29 PM
Smoke_Tetsu, on 29 September 2011 - 06:14 AM, said:
Yeah the old ATI displays was great for getting the best out of old games with FSAA etc. still don't know why they dropped it as it was definitely a competitive advantage
I've own loads of ATI cards from the 16MB Rage 128 to the 1GB Radeon 5870 and don't have many issues but it would be interesting to know if there is a formal way bugs could be logged by end users. There are a few AMD bugs that effect stuff running in WINE that works just fine on NVIDIA cards and it's not like you can contact the game publisher when your are running their game on another OS.
#4
Posted 29 September 2011 - 02:53 PM
#5
Posted 29 September 2011 - 03:49 PM
mattw, on 29 September 2011 - 02:29 PM, said:
mattw, on 29 September 2011 - 02:29 PM, said:
#6
Posted 29 September 2011 - 09:24 PM
Quote
Quote
I don't suppose he'd also be willing to comment on which nVidia (are VP2 based GPUs like the 8600GT, 8800GS/GT, 9600GT, GT120, GT130, GTX285) and Intel GPUs (namely Arrandale) are supported in Lion?
Quote
Quote
Quote
I'm curious though, why if the X1000 support was recently redeveloped, ARB_framebuffer_object support wasn't added? I remember Brad Oliver specifically requesting this extension for the X1000 a year ago pointing out that without it the X1000 could be prematurely dropped from being supported in newer games. The hardware definitely supports it since it's available in the Windows OpenGL driver and is DX9 functionality. X1000 support in games has been decreasing although I don't know if this can be attributed to lack of ARB_framebuffer_object. The X1600 doesn't have the performance for newer games, but the X1900 is faster than the HD2400XT and 9400M and should definitely hold it's own against the 8600GT, HD2600Pro/XT which are still generally supported so the X1900 still has some life in it. I'd be curious to see if the X1000 could support ARB_color_buffer_float too seeing it's available in nVidia's equivalent generation 7000 series Windows drivers, although not OS X drivers.
And given the AMD X1000 series is known to have much better OS X driver support than the equivalent generation nVidia 7000 series, AMD might want to look into why VP Ltd's Hearts of Iron 3: For The Motherland specifically doesn't support the X1000 series and yet supports the 7000 series. There must be some very specific quirk there.
If I can suggest some other questions:
1. First, not a question, but I wanted to congratulate AMD on design wins across the entire 2011 Mac lineup at the expense of nVidia. I believe a lot of that was the forethought to spend the transistors on Eyefinity across the entire HD5000/HD6000 product line, which now allows Apple to offer >2 display support with Thunderbolt. The great thing about AMD for Mac, is that Chris Bentley is active in the community such as giving interviews and answering questions on mailing lists, something I really don't need nVidia or Intel's driver teams doing.
Obviously it can't be talked about yet, but I'd be very curious how Thunderbolt is enabled on the upcoming Mac Pro. Are the Thunderbolt ports and controllers on the motherboard and the graphics card's display output connected to the motherboard through a separate internal cable (not the PCIe port) to provide the display signal? Meaning the Thunderbolt ports are on the motherboard header and the back of the graphics card is now just one big vent. Or are the Thunderbolt ports on the graphics card, with the controllers on the graphics card sharing the PCIe x16 bandwidth or the graphics card having a separate internal cable to route the Thunderbolt data signal to the ports on the graphics card bracket? I guess we'll have to wait for the Mac Pros to be released to see.
2. AMD has definitely been at the forefront of OpenCL, having dropped their own proprietary Close to Metal interface for OpenCL. nVidia by contrast is still focusing on CUDA, with their OpenCL 1.1 drivers just recently released, almost reluctantly after AMD, then Intel for CPUs, and Apple with Lion all releasing OpenCL 1.1 drivers first. While AMD has been pushing OpenCL drivers, SDK, and tech announcements with Havok and Bullet, when are we going to see OpenCL used in games? Is it that there isn't actually a real net for GPGPU in games or that developers just haven't caught on yet? What needs to happen for developers to catch on and what can AMD do to help that along? OpenCL's advantage as a GPGPU interface is that it's non-proprietary (vs CUDA), runs on the CPU for fallback (vs. DirectCompute), and is cross-platform (seeing Mac market share is steadily creeping up). OpenCL hardware/drivers are finally all in place with GPU support from AMD, nVidia, and Intel (Ivy Bridge) and fallback CPU support from AMD and Intel. Hopefully we'll see something happening in the next year.
3. Given Apple's plugin driver architecture, is it useful for AMD to release graphics drivers themselves separate from OS X updates? Or are complementary changes to Apple's front-end generally required for effective performance improvements or bug fixes? Is the potential to break something just too great, when going it alone? Does AMD have any interest in continuing to offer new drivers to older OS for a period of time? With driver updates tied to OS updates, Snow Leopard drivers are presumably no longer seeing any updates now that 10.6.8 is out (unless the rumoured iCloud 10.6.9 appears). However, now that Snow Leopard OS development is finished and stable, does that mitigate some of the concerns of AMD releasing their own drivers updates breaking things since it should be easier to test if things aren't a moving target. An additional 6 months - 1 year of previous OS driver updates after a new OS is released would be very useful.
4. Does AMD have any comment on Crossfire support for OS X. Personally, with it sometimes seeming that everyone already has there hands full with keeping OS X optimized for new and old games with single GPUs, I don't think placing the additional burden of supporting Crossfire/SLI for niche Mac Pro gamers is worthwhile. I'm also not enthused about Crossfire/SLI efficiently either with sometimes wonky performance scaling, increased power usage or space usage. Still, its a pretty common Mac gaming question for enthusiasts that should be answered one way or another.
5. What is AMD's feeling about developers making games natively in OpenGL? Presumably there are now plenty of developers familiar with OpenGL semantics due to the popularity of OpenGL ES and soon WebGL. With the legacy cruft removed, OpenGL 3.2 Core profile is said to be quite close to OpenGL ES 2.0. Has OpenGL ES's success in mobile helped? OpenGL's advantage is of course its cross-platform potential, but do OS/API differences make it realizable to have a largely unified codebase for a cross-platform game? Now that OpenGL 3.2 is available in OS X, ie. that the OpenGL implementation on the Mac isn't so far behind Windows in terms of feature support, has that increased developer interest in making OpenGL games? An OpenGL 3.2 game could potentially support Windows Vista, Windows 7, OS X Lion, and Windows XP with the later being notable for bringing DX10 features to the 21% of DX10/DX11 GPU owners who, according to the latest August Steam Survey, actually use Windows XP. Assuming a game developer does intend to support Mac, what advantages/disadvantages does an OpenGL native approach give compared to using DirectX and writing an OpenGL translator as used by the Source engine, using DirectX and using a Cider wrapper, or using DirectX and later porting to OpenGL for the Mac version?
6. These are kind of loaded questions, but regardless of whether it is Apple's limitation due to the OS X architecture or AMD's limitation due to AMD Mac driver manpower compared to Windows driver manpower, given a properly optimized game on both platforms, is OS X's AMD OpenGL driver performance faster, slower, or the same as Windows' AMD OpenGL driver? Now for even more controversy, to achieve the same graphics effect, assuming its properly optimized on both platforms without changing the output quality, can performance in OS X OpenGL match that of Windows DirectX?
7. With the new Thunderbolt Display being a very full featured dock which especially benefits the MacBook Air giving desktop-like peripheral access, does AMD feel this is the way of the future? Specifically, computers will become ultra-portables that have the bare minimum features need for the road, but become full computers when docked at home including external graphics cards. It obviously won't work that well for high-end GPUs due to bandwidth limitations, but can PCIe 2.0 x4 be sufficient for today's mid-range GPUs? Does AMD think external interfaces like Thunderbolt will speed up faster enough to enable external graphics cards with little performance sacrifice in the near future?
Sorry for being long winded.
EDIT:
Some additional questions:
8. What exactly is meant in Lion by the Legacy profile in terms of support? Do Legacy and Core just control the front-end portion of the pipeline with both pipelines sharing the same AMD driver in the back-end? Or are Legacy and Core profile completely separate drivers? If they are separate drivers, will the Legacy driver still receive full support, ie. frequent updates, performance improvements, bug fixes, new extensions as needed? Or will the Legacy driver just receive bug fixes? Perhaps something in between, like performance improvements and bug fixes, but no new extensions.
It would be good if the Legacy profile were to gain additional extensions to bring it up to OpenGL 3.1 support sans the new GLSL. Games will be coming out on the Legacy profile for a while, particularly established game engines like that used in WoW, Starcraft 2, and Diablo III, where they aren't likely to rush to write a separate OpenGL 3.2 Core rendering path. Having a pseudo-OpenGL 3.1 Legacy profile, up from the current pseudo-OpenGL 3.0 Legacy profile, would make a good complement to the OpenGL 3.2 Core profile.
9. Since it was leaked, I've been wondering why OpenGL 3.2? I can understand not going to OpenGL 4.0 since adding tessellation support, new shader types, and new data formats is probably tricky. I'd be curious to see whether Apple implements a software tessellator since they like to keep the software renderer in sync with the GPUs. So if no OpenGL 4.0, why not OpenGL 3.3? OpenGL 3.2 brings many new features, but seeing all AMD and nVidia DX10 GPUs support OpenGL 3.3 in Windows and Linux, it just seems like something is being left on the table. Presumably, it's again something to do with the software renderer and/or, like Apple didn't have enough time to add GLSL 3.30 support to the front-end and update the software renderer.
#7
Posted 29 September 2011 - 09:42 PM
ltcommander.data, on 29 September 2011 - 09:24 PM, said:
BTW, in my experience totally OpenGL native games tend to be a lot faster than any translated games.... for example Doom 3 is faster than equivalent featured translated games even when you pile on a bunch of features like with the sikkmod (which adds many if not all modern features doom 3 lacks including motion blur, HDR, crytek style screenspace ambient occlusion, tone mapping, color grading, etc. etc.).... even you run that through a windows opengl to mac opengl converter via a wrapper.
Alex Delarg, A Clockwork Orange said:
the Battle Cat said:
Late '09 27 inch iMac, Core i5 Quad 2.6Ghz, 12GB RAM, ATI Radeon HD4850 512MB, 1TB Hard Drive
#8
Posted 30 September 2011 - 12:35 AM
Smoke_Tetsu, on 29 September 2011 - 09:42 PM, said:
BTW, in my experience totally OpenGL native games tend to be a lot faster than any translated games.... for example Doom 3 is faster than equivalent featured translated games even when you pile on a bunch of features like with the sikkmod (which adds many if not all modern features doom 3 lacks including motion blur, HDR, crytek style screenspace ambient occlusion, tone mapping, color grading, etc. etc.).... even you run that through a windows opengl to mac opengl converter via a wrapper.
#9
Posted 30 September 2011 - 12:39 AM
MacBook pro retina 15"
8GB RAM, 512GB SSD, Nvidia 650M
Cyborg RAT 5
Magic Trackpad
..and Darkest of Days is still slow ;-)
#10
Posted 30 September 2011 - 01:09 AM
ltcommander.data, on 30 September 2011 - 12:35 AM, said:
Quote
Official website: www.wolfenstein.com
Latest version: 1.1
Single player and Multiplayer are two seperate branches
Single player - evolved from Quake 4 branch.
OpenGL renderer replaced with Directx 9 deferred renderer.
File streaming system labeled 'Streamtech' using stream packs.
UI using Scaleform GFX
Physics handled by Havok
Multi player - evolved from ETQW branch.
Can use MD5r models of single player format.
On the other hand I had "native" games which seem to use OpenGL natively be more crashy\buggy\less performance than that despite being originally OpenGL.... *cough* Riddick *cough* (that engine had a choice in Windows between OpenGL and Direct3D anyway) I mean that game isn't TOO bad right now but I can't turn on AA for fear of glitches and crashing. At least in Lion.
But yeah generally speaking the rule of thumb seemed to be that totally OpenGL native games run better in non-windows environments where OpenGL is the native API.
Alex Delarg, A Clockwork Orange said:
the Battle Cat said:
Late '09 27 inch iMac, Core i5 Quad 2.6Ghz, 12GB RAM, ATI Radeon HD4850 512MB, 1TB Hard Drive
#11
Posted 30 September 2011 - 02:40 AM
#12
Posted 03 October 2011 - 09:32 AM
My initial reaction was, "That's pretty underwhelming considering that the Quadro and Radeons already support OpenGL 4.1 on Windows," but I think there's reason to be confident that we won't have to wait as long as we did with 3.2 to reach GL 4.1. The 3.2 OpenGL stack in 10.7 is a completely new implementation, and it's been separated from the existing 2.1 stack, which will be used by apps until code explicitly calls for the "forward context" GL implementation. Even before I knew about Lion's OpenGL 3.2, I'd heard from some reputable people that an "overhaul" of the GL stack was coming, so this need to explicitly call the new implementation suggests it's radically different from the previous one. The low-ish 3.2 might just be to give Apple and developers fewer bugs to squash while moving to this new path.
Third paragraph from bottom of this page: http://arstechnica.c...ing-start.ars/4
What is the news on this?
Would utilizing this new OpenGL stack in Lion improve frame rates in current and future games?
I guess Chris would know.

















