VOGONS

Common searches


Windows and portability

Topic actions

Reply 40 of 41, by mirh

User metadata
Rank Member
Rank
Member
Scali wrote:
mirh wrote:

You make it sounds as if it was rocket science. It's just a driver matter.

Writing graphics drivers IS rocket science (why do you think there are so many bugs in them? Games/graphics drivers have to be some of the most buggy software out there). Especially a convoluted API like OpenGL... and no proper specs or reference.

I meant that once you fix something it's fixed.
It's not like every time a game come out you necessarily have to fix every extension again.

Scali wrote:
mirh wrote:

AMD does support it, and most of times you only require a couple of extensions (that if everything goes well could be supported even by 10 years old hardware)

Uhhh, the screenshot in that thread clearly shows OpenGL 4.4, not 4.5.
Yes, they support some of the 4.5 functionality as extensions to 4.4. But not everything. Besides, the driver obviously doesn't report version 4.5 to the application, so it simply isn't going to work that way. You'd have to manually query for all extensions you need to use, and pray AMD supports them all. See how OpenGL is broken for development in practice?

You got me. It's actually 4.5 without the corresponding GLSL.
Still, what's the scandal with querying single extensions? Isn't it basically the same concept of feature levels? Just more "scattered"?
and btw yes, AMD still has broken ones

Scali wrote:
mirh wrote:

Looking to the future ( ͡° ͜ʖ ͡°)

They make *Rage* work, not OpenGL. These hotfix drivers do just enough to make the specific game work, but that is no guarantee that the entire driver actually works according to the full spec. It just works well enough to run Rage.

Actually, when I said future I meant that there are a bit more people on the bandwagon than Carmack alone now.

pcgamingwiki.com

Reply 41 of 41, by Scali

User metadata
Rank l33t
Rank
l33t
mirh wrote:

I meant that once you fix something it's fixed.
It's not like every time a game come out you necessarily have to fix every extension again.

As I said: you do.
That's the problem with OpenGL in general and extensions in particular: the behaviour depends on a very large and convoluted state machine.
It may work for the specific states that one piece of software uses, but it can still break down in many other states.

mirh wrote:

Still, what's the scandal with querying single extensions? Isn't it basically the same concept of feature levels? Just more "scattered"?

No, feature levels are a completely different thing. They are part of the API design, and are exactly what they say they are: feature levels. Each feature level means you have a certain level of features supported.

OpenGL extensions may actually change the way completely different parts of OpenGL will operate, which is not documented very well.
Look for example how they hacked vertex buffer objects into the legacy glDrawElements() API. One of its arguments was supposed to be GLvoid* indices. Now you 'magically' bind an index buffer with an extension function call, and when you pass 0 as your indices-pointer to glDrawElements(), it magically works.
That's just nasty.

Features aren't hacks.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/