There are a few good reasons the game industry chooses DX for games over OpenGL.
For starters, as has been mentoned earlier in the thread, DX offers a robust set of tools, including sound, video, input, etc... All of them have similar API's making the entire thing feel more cohesive and familler.
Second of all, there is the driver support. Most vid cards these days have DX support, and D3d acceleration. Those that do not support the full range of features are still supported through a very scalable hardware emulation layer.
Fewer manufacturers develop OpenGL drivers. The reasons are the rub though. The MS hardware labs have specs that are required to be met to be considered DX certified drivers, as do OpenGL. The MS specs are much looser as the preformance/implementation of features. The OpenGL specs are much more strict, thus making it a bit tougher on hardware manufacturers to create drivers. For budget cards and such this extra testing etc. is not worth the cost for the manufacturer. The average budget card buyer is not going to know enough and/or be interested in gaming to want an OpenGL card.
The gaming industry understands this quite well, and to keep a profet, will release games with DX support. While including OpenGL support too is an option, in reality this will triple or quadruple testing and reviews for the code. That's costly, and video games are for the most part a low profet industry.
Finialy to the issue of DX being clunky or hard to use... take a look at the DX8 api's, notably the D3d one. You can produce the same results as OpenGL with code that is relatively as simple, roughly the same number of lines, and often get a very slight preformance increase out of it as well. Tie in the other api's for sound, networking, multimedia playback, etc... You end up in a very comfortable environment. DX is really starting to shape up into what was promised in the beginning from MS.
In light of all this, I have to say that I prefer OpenGL and OpenAL out of principle. Ease of use is about the same now, but open source and cross platform compatability are strong arguments. Now let's just convince the hardware peeps that we want more support for these api's.
There are a few good reasons the game industry chooses DX for games over OpenGL.
For starters, as has been mentoned earlier in the thread, DX offers a robust set of tools, including sound, video, input, etc... All of them have similar API's making the entire thing feel more cohesive and familler.
Second of all, there is the driver support. Most vid cards these days have DX support, and D3d acceleration. Those that do not support the full range of features are still supported through a very scalable hardware emulation layer.
Fewer manufacturers develop OpenGL drivers. The reasons are the rub though. The MS hardware labs have specs that are required to be met to be considered DX certified drivers, as do OpenGL. The MS specs are much looser as the preformance/implementation of features. The OpenGL specs are much more strict, thus making it a bit tougher on hardware manufacturers to create drivers. For budget cards and such this extra testing etc. is not worth the cost for the manufacturer. The average budget card buyer is not going to know enough and/or be interested in gaming to want an OpenGL card.
The gaming industry understands this quite well, and to keep a profet, will release games with DX support. While including OpenGL support too is an option, in reality this will triple or quadruple testing and reviews for the code. That's costly, and video games are for the most part a low profet industry.
Finialy to the issue of DX being clunky or hard to use... take a look at the DX8 api's, notably the D3d one. You can produce the same results as OpenGL with code that is relatively as simple, roughly the same number of lines, and often get a very slight preformance increase out of it as well. Tie in the other api's for sound, networking, multimedia playback, etc... You end up in a very comfortable environment. DX is really starting to shape up into what was promised in the beginning from MS.
In light of all this, I have to say that I prefer OpenGL and OpenAL out of principle. Ease of use is about the same now, but open source and cross platform compatability are strong arguments. Now let's just convince the hardware peeps that we want more support for these api's.