lzdude69 wrote:
Dude, it is a fact that OpenGL is much slower than Direct3D. To use your example, OpenGL would be like a regular old hammer, where d3d is the same hammer handled by the Hulk. You're right that it's not the actual API that is causing the speed difference, it's the drivers. But even so, OpenGL is slower across all of the GPU's/drivers which is what matters, otherwise there would be AAA games using OpenGL.
Dude
AAA games that use OpenGL??? DOOM3, KOTOR, RAGE,
etc...Slower than what for what? If the game runs at 250fps vs 200fps you will not notice any diff, if the game runs at 30fps vs 60fps you will notice a difference... both APIs can be used to achieve that level of graphic efficiency (speed).
D3D is a more evolved, refined, smaller and simpler to use API that does not have 4 ways to do exactly the same thing. I love how MS makes clean breaks in functionality and moves much faster than the OpenGL ARB, giving developers access to features in a much more efficient and quicker way .
However, OpenGL is not dead and it's demise is greatly exaggerated! It is used by the vast majority of DCC makers: Avid, Autodesk, Adobe, Luxology, etc... it has a huge amount of code base and users. So even if you don't use OGL in your game engine, guess what!? the content for your game (3d assets and video composition) was probably created in a OGL powered pipeline
Real Time OGL holds the same position it always had. It is a great way to do some research work, it can be used to create multiplatform games and interactive applications, but in the MS/windows market OGL has always and will forever be in a minority position, XBox leverages the windows programming model and gives us DirectX as an SDK, Sony PS, and Nintendo don't use OGL because it is a HUGE messy library. Being huge and messy is actually good if you are doing research, but not in a production environment, that needs to be quick and efficient.
Anyway, I am all for supporting both backends, instead of arguing we should really be working on implementing a d3d9 backend in H3D. My d3d9 experience is very limited, and i never worked with d3d10 ( i don't have any hardware that runs it), i am very interested in studying the d3d9 backend code as a way to learn more about it, i hope that someone volunteers to do this work.
I can tell you right away that i will not be doing a D3D backend, but if one is introduced in a future version of H3D and provides benefits on the windows platform, i see no reason not to use it on that platform and fallback to OGL in other platforms.