Original Post
Well, I have been programming graphics demos lately in Direct3D. I really like the DirectX API and all, but the constant version changes, inability to add your own functionality, and most of all, lack of cross platform support(not counting Windows/Xbox support). You can't even use Direct3D 10/11 on all versions of windows! I have looked into OpenGL because it is the only mainstream API with cross platform support, and dislike it's procedural interface (although OpenGL does do some things in better/simpler ways IMHO). I would go with OpenGL, if Windows/Xbox didn't account for a vast majority of the video game industry. So, what if I write a game in Direct3D, and it does really good. I want to increase the exposure it gets by porting it. Now I have the problem of supporting multiple APIs, and the individual problems in both APIs(like OpenGL's horrible extensions that aren't even supported by all the cards). This creates longer development times, more frustration, more bug-ridden code, and lack of motivation(sometimes). Honestly, I don't like DirectX OR OpenGL. What do us graphics programmers need? We need a clean, simple graphics API with: -Constant development & updates like DirectX. -Cross-Platform support like OpenGL. -Support for adding new functionality. -Both a procedural AND object oriented interface like Leadwerks game engine. -No driver problems(I know this is up to graphics card manufacturers) -No cost. -Not having to write up vendor-specific hacks(OpenGL). -As much programmability as possible. Well, that's all I have to say. Sorry for any bad grammar, spelling, or sentence structure, I just threw this together in a few minutes. Feel free to add on ideas and leave your comments. P.S. Maybe we just need the CPU and GPU to merge, and one programming language for both(like C++ with graphics capabilites) that is low-level, and we can program our own graphics API's.