Why OpenGL 3.0 is so badly?

Started by
29 comments, last by gold 15 years, 7 months ago
The real question is Why the maintenance of a mutable object system in OpenGL 3.0 is so badly? How it affects its performance? Which disadvantages it presents on Geometry shaders?
Advertisement
Read "OpenGL3.0.. I Mean 2.2", and google will tell you the rest.

FlyingIsFun1217
I don't get it.

is it so bad enough for throwing it away?

Of course, OpenGL doesn't reflect the real architecture of Graphics processors. But it works!

At least on my computer, OGL beats DX9c. But I didn't experiment with DX10 yet, may the situation would be far different. (core 2 duo with NVidia 8400)
Back in the day OpenGL was ahead of the curve, and hardware was racing to catch up. Most games let you switch between the software rasterizer and hardware acceleration. Now it's the other way around, and the hardware guys are setting the curve and the API people are racing to keep up. OpenGL is way behind, or forces the hardware guys to jump through hoops, while DirectX is mostly on par with what the hardware is doing, so basically if you're game needs to use the latest hardware features (which most AAA titles do), then you're pretty much stuck with DirectX.

If you don't care about the latest features, and you don't mind a little obtuseness here and there (and lack of support on most integrated chipsets), then OpenGL is fine.
[size=2]Darwinbots - [size=2]Artificial life simulation
Quote:Original post by Numsgil
Back in the day OpenGL was ahead of the curve, and hardware was racing to catch up. Most games let you switch between the software rasterizer and hardware acceleration. Now it's the other way around, and the hardware guys are setting the curve and the API people are racing to keep up. OpenGL is way behind, or forces the hardware guys to jump through hoops, while DirectX is mostly on par with what the hardware is doing, so basically if you're game needs to use the latest hardware features (which most AAA titles do), then you're pretty much stuck with DirectX.


Which features is OpenGL lacking that DirectX has then?
Quote:Original post by Numsgil
OpenGL is way behind, or forces the hardware guys to jump through hoops, while DirectX is mostly on par with what the hardware is doing,

This is incorrect. OpenGL offers essentially everything DX10 offers (and very shortly also D3D10.1, and possibly even more). It's not about functionality, it's about driver support and about facilitating both driver development and application development. Essentially, D3D costs both IHVs and application developers less money to maintain than OpenGL. That's the whole deal with OpenGL 3.0, not functionality.

Quote:Original post by Numsgil
so basically if you're game needs to use the latest hardware features (which most AAA titles do), then you're pretty much stuck with DirectX.

Also incorrect. You can access the latest features with OpenGL, but you have to rely on driver support. Which can be very variable depending on IHV. And very few (probably no) current AAA games use the latest DX10 features. Heck, most AAA games don't even use the latest DX9 features.
Can anyone explain what AAA games mean?
Quote:Original post by CTPAX
Can anyone explain what AAA games mean?

http://www.gamedev.net/dict/term.asp?TermID=1323
Quote:Original post by Cromulent
Which features is OpenGL lacking that DirectX has then?



I'm Curious too.
_______________ Play my Game at neonswarm.com
As posted above, OpenGL does not lack any features. It is just not a good representation of today's hardware, making it difficult to implement in the drivers. Current OpenGL also makes programming more difficult than it should, with a larger specification (causing a longer learning curve) and unclean code (using extensions and redundant calls).

OpenGL 3.0 should have been a new clean API, featuring an object model that would make learning and working with OpenGL easier. It would also make driver development a lot easier, without the functionality the hardware is not made for. Also, the object model would make code look a lot cleaner.

The reason for not writing a new API is presumably because it would force application developers to write new code to continue using the latest hardware. This in itself is a contradiction, because the latest hardware should require change to use after 10 years, no matter the API that uses it. OpenGL's answer so far was to use extensions. The new answer is probably deprecation.

Right now we can only hope OpenGL 3.1 will be what we have hoped to see now.

This topic is closed to new replies.

Advertisement