Future of OpenGL on the Mac

Started by
11 comments, last by MARS_999 16 years, 6 months ago
With the release of Leopard, Apple has also updated their OpenGL Capabilities Tables and Supported OpenGL Extensions Guide. Apple is introducing some of the basic Shader Model 4.0 functionality (geometry shaders, transform feedback, gpu shader4) on the NVidia 8600M GT which is shipping on the MacBook Pro, however the ATI HD cards (shipping on the iMac line) still are missing even vertex texture fetch support (according to the list of supported extensions). If you are interested in helping the effort to bring the Mac's OpenGL support up to date so that the Mac can be a competitive and viable platform for both Games and GPGPU based applications, please send in a feature request to Apple for full support on both the NVidia GeForce 8 series and ATI HD Series cards for Shader Model 4.0 features such as, GL_EXT_gpu_shader4 GL_EXT_texture_array GL_EXT_texture_integer GL_EXT_texture_buffer_object While it might not seem important now because you might not be currently making use of SM4.0 features in your game or application, your Direct3D competitors are already making use of these features and have a years head start with working D3D 10 driver support from NVidia and now ATI. It can take quite some time to develop proper drivers, so now is the time to insure Apple's OpenGL support does not fall another year or two behind! Here is a direct link to the Apple Bug Reporter, where you can easily file a feature request, http://developer.apple.com/bugreporter/ This does require a valid Apple Developer Connection account, which you can get for FREE here, http://developer.apple.com/products/online.html
_|imothy Farrar :: www.farrarfocus.com/atom
Advertisement
Quote:Original post by TimothyFarrar
With the release of Leopard, Apple has also updated their OpenGL Capabilities Tables and Supported OpenGL Extensions Guide.

Apple is introducing some of the basic Shader Model 4.0 functionality (geometry shaders, transform feedback, gpu shader4) on the NVidia 8600M GT which is shipping on the MacBook Pro, however the ATI HD cards (shipping on the iMac line) still are missing even vertex texture fetch support (according to the list of supported extensions).

If you are interested in helping the effort to bring the Mac's OpenGL support up to date so that the Mac can be a competitive and viable platform for both Games and GPGPU based applications, please send in a feature request to Apple for full support on both the NVidia GeForce 8 series and ATI HD Series cards for Shader Model 4.0 features...


Does that ATI card actually support Vertex texture units? I recall that ATI has been very opposed to the idea for some time now...

Edit:
As an amusing aside, I just received the first response back from a 4 month old bug report to Apple - about a fairly glaring problem in the linker. The response reads like so:
Quote: This is a follow-up to Bug ID# *******. Engineering believes this issue has been addressed in Mac OS X Leopard.

Leopard is available commercially as of October 26, 2007 at:

<http://www.apple.com/macosx/>

Upon installing this software, please update this bug report with your results.

At least it shows they read it...

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

A few guys from Apple are heading up the Longs Peak and Mt. Evans ARB. SM4-compliant drivers will arrive soon, I am sure.
Interestingly enough, having installed Leopard on my early-model MacBook Pro a few days ago, I went to look at my GPU info, and discovered that my Radeon X1600 Mobile suddenly sprouted 16 Vertex Texture units (it had no support for vertex textures under Tiger).

Many kudos to Apple for upgrading my GPU at no cost to myself ;)

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

Quote:Original post by swiftcoder
Does that ATI card actually support Vertex texture units? I recall that ATI has been very opposed to the idea for some time now...


They didn't include VTF in the SM3.0 cards due to the nature of the hardware; the reasoning being, wrong or right, that Render-to-vertex array was a better approuch and that a slow VTF with limited formats, as provided by NV, wasn't worth it.

The latest generation however has unified shader cores, as such any shader code can perform (more or less) the same operations.

As for seeing 'D3D10' support from AMD/ATI for GL2.1, I wouldn't count on it. Aside from any critcal bug fixes I would suspect work on 2.1 series GL drivers has stopped pending 3.0's release.

until apple actually pull there fingers out, the osx platform will always be behind pc's when it comes to raw 3d power.

Take a new game like Crysis, there is not one mac on the market that is capable of running that at all it's glory.

I do appreciate what you are trying to achieve but there is only 1 mac that u can buy that is even capable of GL_EXT_gpu_shader4 and it's a notebook (with a minumum price tag of US $2000).

Apple's GPU options are poor to say the least. No i am not an apple basher, in fact i love osx ... i would drop pc land in a heart beat if apple could meet my demands as an avid gamer and developer.
Quote:Original post by swiftcoder
Interestingly enough, having installed Leopard on my early-model MacBook Pro a few days ago, I went to look at my GPU info, and discovered that my Radeon X1600 Mobile suddenly sprouted 16 Vertex Texture units (it had no support for vertex textures under Tiger).

Many kudos to Apple for upgrading my GPU at no cost to myself ;)


Oddly enough all the graphics cards in Apple's drivers now show 16 Vertex Texture units if you are looking at MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB ... smells like software emulation to me (many of these cards and all the ATI cards until HD have no vertex texture fetch ability).

_|imothy Farrar :: www.farrarfocus.com/atom
Quote:Original post by vibe3d
until apple actually pull there fingers out, the osx platform will always be behind pc's when it comes to raw 3d power.

Take a new game like Crysis, there is not one mac on the market that is capable of running that at all it's glory.

I do appreciate what you are trying to achieve but there is only 1 mac that u can buy that is even capable of GL_EXT_gpu_shader4 and it's a notebook (with a minumum price tag of US $2000).

Apple's GPU options are poor to say the least. No i am not an apple basher, in fact i love osx ... i would drop pc land in a heart beat if apple could meet my demands as an avid gamer and developer.


I think you summed up the situation quite well. This is a classic what comes first the chicken or the egg scenario. IMHO Apple won't allocate enough resources to get its OpenGL drivers up to speed because it doesn't see a good return on that investment (needs to result in more Mac's being purchased and user base expanding), and conversely, developers cannot port games/apps to Mac or hope to use up to date GL features because of the lack of hardware support in the drivers.

The sad thing here is that Apple seems to have a excellent grasp of developing and marketing their iPod and iPhone, but seems consistently clueless about the marketing potential of the Mac as a gaming platform. Apple has something like only at most 22M OSX users (world wide?), and in 2006 something like 38M game units (boxed titles?) were sold to US PC users alone ... my guess is one primary reason people don't purchase Macs for home use is because of the lack of games!

And the key element for this is getting full driver support (without using software emulation for hardware supported features!), without that, nothing will change. Which is exactly why if you are reading this, that you should go and write in a feature request for up-to date SM4.0 hardware support in the drivers, ... only the squeaky wheel gets the grease!
_|imothy Farrar :: www.farrarfocus.com/atom
Quote:Original post by TimothyFarrar
Quote:Original post by swiftcoder
Interestingly enough, having installed Leopard on my early-model MacBook Pro a few days ago, I went to look at my GPU info, and discovered that my Radeon X1600 Mobile suddenly sprouted 16 Vertex Texture units (it had no support for vertex textures under Tiger).

Many kudos to Apple for upgrading my GPU at no cost to myself ;)


Oddly enough all the graphics cards in Apple's drivers now show 16 Vertex Texture units if you are looking at MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB ... smells like software emulation to me (many of these cards and all the ATI cards until HD have no vertex texture fetch ability).


You may well be right. However, is it possible that they are instead emulating vertex texture fetch with render-to-vertex-buffer, as ATI recommends it be done at the application level. It seems possible (since Apple writes the drivers) that they may have provided transparent emulation of this kind in the driver itself, as has been proposed previously.

Anyone have an idea about how to test whether this is hardware based, or running in software?

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

Try writing a program which is VERY vertex shader heavy and uses VTF and observe the resulting framerate?

This topic is closed to new replies.

Advertisement