Comment Why GL is losing momentum (longish) (Score 1) 90
As a game developer and someone who has written extensively in Game Developer magazine on openGL issues, I think my credentials on GL support cannot be questioned. However, let me explain why OpenGL is having problems and why more and more companies will be shifting to DX.
The facts are that there is no one really to evangelize GL. Someone needs to lead graphics development. Someone needs a vision and a roadmap for where hardware should be going and how developers should be using it. In the old days, the defense industry and SGI served that role to some extent but cannot anymore. Microsoft has stepped up and like or not are the only ones able to do this now.
Microsoft goes out to the developers and asks them what they want to see (you may not believe this but it is true that this happens). They then talk to the hardware manufacturers and ask them what they think is possible in various timeframes. They then establish a roadmap for features and lay that out for both developers and IHVs. Hardware vendors decide what to tackle for their cards and developers decide what to use. Sometimes it works well and sometimes it doesn't.
For example, DX7 had matrix blending but it was limited. It was all the IHVs would agree to but it wasn't really good enough for any developers to actually use. So it was not widely adopted. Everyone acknowledged this and the next gen it will improve.
Now the problem. OpenGL has no one able or willing to serve this role. It is a tough one. Someone who can work with developers and IHVs, keep trade secrets, and make people listen. So OpenGL is the orphan stepchild. Ends up with proprietary extensions that follow DX and wait around for the ARB to decide what to do. Look how long it took the ARB to decide on multi-texture.
You do get people like Carmack who via a plan file (as well as discussions with hardware vendors) lets out his vision. There are others as well. But face it, DX is more agile. It can adapt to ideas quickly and has a roadmap for a yearly update.
As far as the API. Most developers don't really care. They want access to hardware functions and a method for making things work on a variety of cards. I use GL because I like it and am used to it but if a client wants D3D, I have a wrapper that takes about an hour to hook up. Unfortunately, if GL doesn't get its act together, I will be forced to prototype in DX. I am looking for solutions but this is the reality and it is looking tough for GL.
-Jeff
The facts are that there is no one really to evangelize GL. Someone needs to lead graphics development. Someone needs a vision and a roadmap for where hardware should be going and how developers should be using it. In the old days, the defense industry and SGI served that role to some extent but cannot anymore. Microsoft has stepped up and like or not are the only ones able to do this now.
Microsoft goes out to the developers and asks them what they want to see (you may not believe this but it is true that this happens). They then talk to the hardware manufacturers and ask them what they think is possible in various timeframes. They then establish a roadmap for features and lay that out for both developers and IHVs. Hardware vendors decide what to tackle for their cards and developers decide what to use. Sometimes it works well and sometimes it doesn't.
For example, DX7 had matrix blending but it was limited. It was all the IHVs would agree to but it wasn't really good enough for any developers to actually use. So it was not widely adopted. Everyone acknowledged this and the next gen it will improve.
Now the problem. OpenGL has no one able or willing to serve this role. It is a tough one. Someone who can work with developers and IHVs, keep trade secrets, and make people listen. So OpenGL is the orphan stepchild. Ends up with proprietary extensions that follow DX and wait around for the ARB to decide what to do. Look how long it took the ARB to decide on multi-texture.
You do get people like Carmack who via a plan file (as well as discussions with hardware vendors) lets out his vision. There are others as well. But face it, DX is more agile. It can adapt to ideas quickly and has a roadmap for a yearly update.
As far as the API. Most developers don't really care. They want access to hardware functions and a method for making things work on a variety of cards. I use GL because I like it and am used to it but if a client wants D3D, I have a wrapper that takes about an hour to hook up. Unfortunately, if GL doesn't get its act together, I will be forced to prototype in DX. I am looking for solutions but this is the reality and it is looking tough for GL.
-Jeff