To view parent comment, click here.
To read all comments associated with this story, please click here.
After some additional research I am corrected. I believed OpenGL could run accelerated on the xbox after hearing Quake III ported to xbox but after research it appears it'll be software only, see http://forums.xbox-scene.com/lofiversion/index.php/t502610.html
What I'm saying is that any program written for OpenGL will run on 100% of platforms (although it may not always be accelerated, so perhaps it isn't worth it). While DirectX is available on fewer, especially since various versions of DirectX are only compatible with specific versions of Windows.
Say you are writing a CAD application, should you use DirectX? Perhaps not.
Say you are writing a game, then DirectX is viable, but which version? Use 9c and you miss out on new effects and are associated with a obsolescent platform (WinXP), choose DX10 and only the small percentage of the market with Vista use your stuff (not everyone upgrades their computer at a rate faster than 3 years). However, if you choose OpenGL (as ID continues to do) you can have new shader types and effects on Windows XP (via OpenGL extensions) and can write programs that will work on WindowsXP AND Vista (as well as MacOS X).
The thing is, if you use OpenGL on 'DirectX 10 class hardware' you can have all the 'DirectX 10' (and Direct X11, and DirectX 12 ...) effects without caring about the platform. This is because OpenGL abstracts the hardware and platform, while DirectX doesn't (this is a deliberate strategy from Microsoft, by the way). I know which 3D API makes most sense from a strategic perspective for me (yes, I am writing commercial software that requires use of a 3D API).






Member since:
2007-07-13
steverez1:
That is a common argument that is made, but it is also incorrect. The difference between OpenGL and DirectX is the different between logical AND and OR.
With OpenGL you are developing for Linux,PS3, MacOSX *AND* Windows (and possibly Xbox). Using OpenGL doesn't exclude you from Windows in the slightest, although admittedly you have to use other libraries such as OpenAL for game-related things that are in DirectX but not in OpenGL.
With DirectX it is Windows only (and you are pretty much limited to games only, since DirectX lacks some of the CAD-friendly things such as picking). Using DirectX excludes you from anything except Windows.
The difference is between choosing 100% percent of the market or 90% percent of the market when you develop.