The more Linux gains popularity thanks to Valve & Steam the more we are seeing developers claim OpenGL is broken/hard to use and so on. This time it's Joshua Barczak the lead graphics engineer for Firaxis Games (think Civilization!). He was also a Senior Software Engineer at AMD before joining Firaxis, so he has a good history in this.
These are his thoughts though and not that of Firaxis itself as this is his personal blog.
It's hard to knock these claims when they are starting to come from so top developers who work on AAA titles and I hope the Khronos Group is listening to all this feedback on changes they need to do for the future of OpenGL. Joshua lays out his claims in quite easy to use language and it's actually quite easy to agree with him.
I won't go on quoting parts of his blog post as it's quite long and let's face it 99% of us won't understand a lot of it.
His points are:
#1 - OpenGL is highly fragmented across platforms. “Write-once run anywhere” is a myth. Mobile GL, Linux GL, Windows GL, and Mac GL, are all different from one another.
#2 - OpenGL driver quality is highly variable, and lags abysmally behind DirectX.
#3 - The real problem is that OpenGL, as designed, is inferior to its competitors in several very important ways - GLSL is broken, threading is broken and more.
He does end it on a high note thinking it can be fixed and stating it does actually have some good qualities, so it's not all doom and gloom. I don't think we can relax though considering we only have OpenGL on Linux for major games it's not like developers can just switch to DirectX like they can on Windows.
OpenGL has never had this kind of traction on the desktop before as Linux (& Mac) have never both been as popular as they are now. Every time this comes up people say things like "they need to stop doing it the DirectX way", but can so many developers be wrong? I don't think so.
A better OpenGL API is something that will benefit everyone, but if developers wish to support Linux for now it is there only option, so I hope when they find good ways to do things in OpenGL that they share them in blog posts like they do with their complaints.
One thing I disagree with is his last point saying Mantle is an answer, it's not since AMD have currently no plans to support Linux and it's not looking like they will change their mind either.
Maybe it really is time for a whole new API? What do you guys think?
Full blog post on it is found here.
Also it seems Timothy Lottes disagreed on his blog post in reply to this.
These are his thoughts though and not that of Firaxis itself as this is his personal blog.
It's hard to knock these claims when they are starting to come from so top developers who work on AAA titles and I hope the Khronos Group is listening to all this feedback on changes they need to do for the future of OpenGL. Joshua lays out his claims in quite easy to use language and it's actually quite easy to agree with him.
I won't go on quoting parts of his blog post as it's quite long and let's face it 99% of us won't understand a lot of it.
His points are:
#1 - OpenGL is highly fragmented across platforms. “Write-once run anywhere” is a myth. Mobile GL, Linux GL, Windows GL, and Mac GL, are all different from one another.
#2 - OpenGL driver quality is highly variable, and lags abysmally behind DirectX.
#3 - The real problem is that OpenGL, as designed, is inferior to its competitors in several very important ways - GLSL is broken, threading is broken and more.
He does end it on a high note thinking it can be fixed and stating it does actually have some good qualities, so it's not all doom and gloom. I don't think we can relax though considering we only have OpenGL on Linux for major games it's not like developers can just switch to DirectX like they can on Windows.
OpenGL has never had this kind of traction on the desktop before as Linux (& Mac) have never both been as popular as they are now. Every time this comes up people say things like "they need to stop doing it the DirectX way", but can so many developers be wrong? I don't think so.
A better OpenGL API is something that will benefit everyone, but if developers wish to support Linux for now it is there only option, so I hope when they find good ways to do things in OpenGL that they share them in blog posts like they do with their complaints.
One thing I disagree with is his last point saying Mantle is an answer, it's not since AMD have currently no plans to support Linux and it's not looking like they will change their mind either.
Maybe it really is time for a whole new API? What do you guys think?
Full blog post on it is found here.
Also it seems Timothy Lottes disagreed on his blog post in reply to this.
Some you may have missed, popular articles from the last month:
I think that the discussion is good for Linux and OpenGL. I don't think that OpenGL is broken per se (but I am just a dabbler), I think it just didn't see that much love.
For years there was practically no interest in OpenGL & Linux games, it was a second/third class citizen. And now there is a lot of traction. I will still take a couple of months, some guides, improvements of drivers, ...
Look at Mesa/Open source driver quality/speed. Phoronix has some articles, performance has increased vastly in the last 2 years.
For years there was practically no interest in OpenGL & Linux games, it was a second/third class citizen. And now there is a lot of traction. I will still take a couple of months, some guides, improvements of drivers, ...
Look at Mesa/Open source driver quality/speed. Phoronix has some articles, performance has increased vastly in the last 2 years.
1 Likes, Who?
OpenGL is not consistent because the drivers are not consistent. Fix the driver issues and you fix most of the problems with OpenGL.
0 Likes
Didn't read all the answer from the Timothy Lottes because it looks highly technical but I got the feeling that we have a former guy from AMD that says the car is broken because there's no fuel in the tank...
Just my impressions... :)
Just my impressions... :)
0 Likes
liamdawe: You seem to forget that Microsoft has vendor locked the PC market for over 10 years. So people complaining just don't know any better. How can Id have stayed ahead for nearly 20 years using OpenGL if it was so bad? Why does this guy not complain about console development -> why do consoles still use OpenGL if it was so bad?
So in short, so many people can be wrong.
So in short, so many people can be wrong.
0 Likes
Reading the full article was very insightful.
As it was stated earlier - I think that the discussion is good for Linux and OpenGL. I don't think that OpenGL is broken per se - it's been "good enough" for many games to use it as a secondary or even as primary on Linux/Mac for years.
"We" work hard on these OSS projects so its easy to be emotionally upset when someone takes the time to offer a fresh detailed list of criticism that bother them about OpenGL - we need to remember that everyone including Timothy Lottes want OpenGL to be as kick-ass as possible and view it as constructive criticism which he hopes will give OpenGL the "jolt" it needs to become even better than it already is now.
I support these realistic evaluations of ourselves and our software, it's inevitable that OpenGL overtake DirectX simply because its open source and will be ported to every kind of arch and device anyways.
As it was stated earlier - I think that the discussion is good for Linux and OpenGL. I don't think that OpenGL is broken per se - it's been "good enough" for many games to use it as a secondary or even as primary on Linux/Mac for years.
"We" work hard on these OSS projects so its easy to be emotionally upset when someone takes the time to offer a fresh detailed list of criticism that bother them about OpenGL - we need to remember that everyone including Timothy Lottes want OpenGL to be as kick-ass as possible and view it as constructive criticism which he hopes will give OpenGL the "jolt" it needs to become even better than it already is now.
I support these realistic evaluations of ourselves and our software, it's inevitable that OpenGL overtake DirectX simply because its open source and will be ported to every kind of arch and device anyways.
0 Likes
How about instead of complaining that it's broken, get your hands dirty & fix it?
1 Likes, Who?
Isn't OpenGL FOSS? Isn't it possible to improve it?
1 Likes, Who?
It makes feel bad seeing that opensource is likely to be attacked (lobbied?) while non-opensource alternatives seem to be favored by these same critics.
#1. Any cross-platform graphical low-level API that isn't? Being platform-locked is better? Sure it is for someone but then you don't mind fragmentation.
#2. The fault is in the drivers/manufacturers, not OpenGL, and it's because of a monopoly these critics are helping to.
#3. This is the only point where criticism can be taken, but DirectX sure also has its faults, some versions were really bad and still held monopoly.
Criticism helps to improve, but some criticism feels ill-hearted because of #1 and #2, and even more because OpenGL is treated like it also had the worst non-mentioned DirectX defect that is being locked by the vendor.
#1. Any cross-platform graphical low-level API that isn't? Being platform-locked is better? Sure it is for someone but then you don't mind fragmentation.
#2. The fault is in the drivers/manufacturers, not OpenGL, and it's because of a monopoly these critics are helping to.
#3. This is the only point where criticism can be taken, but DirectX sure also has its faults, some versions were really bad and still held monopoly.
Criticism helps to improve, but some criticism feels ill-hearted because of #1 and #2, and even more because OpenGL is treated like it also had the worst non-mentioned DirectX defect that is being locked by the vendor.
0 Likes
Quoting: GuestQuoting: omer666Isn't OpenGL FOSS? Isn't it possible to improve it?No, OpenGL is not FOSS. It's not even software, really, it's a standard. It's not truly even open anymore, as there are components that are patent encumbered.
While OpenGL isn't a software project, MESA is and it's opensource. It should get a lot more attention from developers and card vendors.
OpenGL supports extensions as a means to improve it. It certainly is more open to participation and innovation than DirectX.
I don't think the problem is the OpenGL design as much as it is the fact that MS has a monopoly that nowadays benefits many in the industry. But like any monopoly this would change when the competition is gone, see what happened to IE.
I'm not saying OpenGL shouldn't be improving to stay competitive and a good API but I think the critics are going overboard and mistakenly blaming OpenGL for everything.
0 Likes
I've been saying for a little while now that OpenGL ended up at a disadvantage, for game development in particular, for quite some time because of the Microsoft monopoly on the desktop, but that is changing.
When Direct3D first came out, and for a while afterward, people who used both environments expressed how superior OpenGL was. However, as time went on, Direct3D got a lot of developer attention because Microsoft had the resources to throw at it, while OpenGL, being actively campaigned against by Microsoft, got less and less attention. During this time period Direct3D ended up surpassing OpenGL in several ways.
However, with the advent of, first, 3D gaming consoles, and then later, iOS and Android phones and tablets, OpenGL started garnering attention again. Now that Microsoft's desktop monopoly doesn't cover all the latest 3D gaming hardware, OpenGL has gradually become a first class development standard again. We are only beginning to see the results of renewed interest in advancing the OpenGL environment. It will continue to improve.
When Direct3D first came out, and for a while afterward, people who used both environments expressed how superior OpenGL was. However, as time went on, Direct3D got a lot of developer attention because Microsoft had the resources to throw at it, while OpenGL, being actively campaigned against by Microsoft, got less and less attention. During this time period Direct3D ended up surpassing OpenGL in several ways.
However, with the advent of, first, 3D gaming consoles, and then later, iOS and Android phones and tablets, OpenGL started garnering attention again. Now that Microsoft's desktop monopoly doesn't cover all the latest 3D gaming hardware, OpenGL has gradually become a first class development standard again. We are only beginning to see the results of renewed interest in advancing the OpenGL environment. It will continue to improve.
0 Likes
See more from me