ih8censorship
Megalomaniac!!!
Administrator
C++ guru
    
Posts: 1241
|
 |
« Reply #15 on: September 01, 2007, 04:53:59 AM » |
|
I think there are a few main reasons why commercial developers choose directx. 1. its not just for graphics- sound and input as well. Meaning that hired programmers can get away with having a decent knowledge of a language, and a good knowledge of 1 api. nothing else is required, leading to cheaper coders and more profit. 2. their interested in supporting as many computers as they can, as cheaply as they can. Now, they could support virtually all of the OS's running on good enough hardware, but this would come at the cost of having to have highly trained programmers who knew how to piece together separate software, or at least some standardized packages across all OS's that provided sound, graphics and input. And that hasn't happened yet. 3. licensing. too many companies are afraid to loose every last bit of control over their code. and why not they wrote it. So that leaves out any gpl'ed software or other restrictive non-house licensing.
It really doesnt make a lot of sense from a commercial standpoint to use something besides directX. As long as we keep buying games they will keep making them. If you dont like directX, dont buy or even play directX games(especially online... if people dont have people to play with online they wont play the game as much) , and if enough people do it it will die off in its time.
Were also getting a bit off of what were supposed to be discussing here, which is the beauty (or lack thereof) of the code. Personally, i think DirectX could be worse, and OpenGL could be nicer from an aesthetic standpoint. All of this might sound like im supporting directx, but really im trying to say again, that some things can be better in some scenario's than others. If i was to do something as a hobby in 3d id lean towards opengl on the basis that i and others could run it however we wanted and im open to looking around for other libs for sound and input and whatever else, and its most likely a bit cleaner for the language i would most likely perfer. If i wanted to make money with a 3d project, id hire a couple of code monkeys who knew just enough directx and whatever programming language was cheap to hire to get the job done,hack it together and get the program out to as many users as possible in the shortest amount of time and i'd keep the majority share of the profits.
Yes DirectX is com based. Really though if you do anything working with windows beyond small gui stuff your going to find yourself working with Com. I had this happen for 3 seperate projects and 3 separate com interfaces. Get over yourself and expand your knowledge. Also, C isnt the best language to work with Com in really and C++ is borderline. The simplicity of a lot of opengl stuff sure is nice though.
but yes, as Melastoma said i would say, it totally depends on goals of the programmer, language being worked in, budget, and other factors. Sometimes OpenGL is a better choice, sometimes DirectX is.
|