I'm not sure what other industries use OpenGL ES but I suspect there is little need for a post 3.0 version in the smartphone/tablet space. Companies seem to be adding full OpenGL/DirectX support to there GPUs as the next step instead.
I don't think that's quite true. Series 6 from powervr for instance have tesselation as an optional feature, and I believe none of the shipping or shipping soon SOCs using series 6 have it. But you are obviously right for the IHVs which derive their smartphone/tablet gpu IP from larger chips (intel with bay trail, amd with temash already did this, and now nvidia starting with Tegra 5 too). Qualcomm is also rumored to have tesselation though with Adreno 4xx (and it's not derived from a larger chip). I don't know anything about the other graphic cores floating around (Vivante etc.) but wouldn't be surprised if there's others which can't do tesselation. And I suspect some of the existing ones (like Adreno 3xx) possibly could already do everything required by GLES 4.0 or whatever it's called (I know that some should be able to do some of the new features though I don't really know if they could do all of them).
PowerVR Series 6 from Imagination Technologies support full OpenGL 3.2 and DirectX 10 according to the Wikipedia and they're in products (iPhone) now. OpenGL ES Next isn't even released yet and once released will likely be over a year before products implement it. You don't think by then PowerVR Series 7 won't be out? You don't think they'll add support for OpenGL 4+ to compete with Tegra K1 by then? The Adreno 420 also claims DirectX 11.1 support though I haven't seen a specific OpenGL version assigned. It does however have tessellation hardware. Again though the point is this standard hasn't even be finalized and then it will take time to actually get to market. It won't even match OpenGL 3.0 (NOT ES) and there is already OpenGL 3+ hardware in phones and there will be even more capable GPUs on mobile before this ES Next hits the streets. So sure, you may be able to retroactively say your obsolete hardware (Adreno 3xx for example) support ES Next but who cares?
Wrong again. Imagination will keep Series6 for at least 4-5 years before releasing a new GPU architecture, just like they did for Series5. ARM will do the same with Midgard.
That doesn't mean they couldn't try to support the full OpenGL, but it will be faster for them to just wait for OpenGL ES Next, than try and port OpenGL 4.4 or 4.5, which will come out next year, I bet. Even Intel doesn't support more than 4.0 in Haswell, and they barely got that ready, too. I remember saying even here on Anandtech about a year ago how disappointed I was Intel will only come out with OpenGL 3.2 for Haswell. They adopted 4.0 at the last minute. I don't think even Broadwell will support more than 4.2. As for the open source versions of their own drivers, Intel is still only up to 3.3.
So the bottom line is it's very time consuming to support the full OpenGL. Nvidia took a shortcut by porting its PC architecture, which already supported OpenGL 4.4, and has always been up to date with OpenGL support, to mobile. That's why the others will remain so far behind for years. Their only hope to catch up (mostly) is OpenGL ES Next, but they won't do it until 2016, and even that is a little earlier than it would've happened without Nvidia doing what they did. I would've expected them to move to ES 4.0 or whatever in 2017.
So they'll keep calling it Series 6 but they'll keep adding capabilities and Series 6 will span APIs. What they call it really isn't important. The point is that we're at ES 3 now and full OpenGL 3.x seems to be where things are going. I didn't say mobile was going to keep up with the latest and greatest OpenGL specs so yeah maybe OpenGL 4.5 will be out but mobile devices will be supporting only OpenGL 3.2 (which Series 6 has models that already claim to do.) The article specifically states that GL Next will NOT include Geometry shaders and tesselation but mobile hardware is already shipping with these things so leaving them out is not where the industry is going. Now maybe budget phones will support ES Next but top tier phones a year from now are more likely to support full OpenGL 3.2+ then ES Next.
The GPU makers could adopt the gallium model so they "only" have to implement hardware enablement for each generation and have a device independent shared ogl/es library. That, of course, would require companies to work together but, in practice, it's the same incentive as moving kernel code upstream.
As I said, PowerVR Series 6 chips can do tesselation (which is a DX11 feature btw, not 10) _optionally_. FWIW I don't think Series 7 is around the corner, powervr just announced some updated Series 6 (6 XT) which have the same feature set (just to get some idea for the timeline a series may stay around, series 5 was the current one for like 8 years, though 5XT was a significant upgrade, and actually some parts of series 5 but definitely not all were already dx10 compliant though I don't know of any such shipping configuration outside of intel's atom platform). If you look at all the Series 6 parts, some are dx10 compliant, some ought to be dx11 compliant, and some only even support feature level 9_3. And I don't think that those shipping (or shipping soon) really could do tesselation - though it's actually very difficult to tell.
Just because a GPU supports tessellation doesn't necessarily mean it's DX11 compliant. Tessellation is not a DX11 exclusive feature. AMD included a proprietary tessellator in their HD2000 - HD4000 series cards (that no one ever used), all of which were limited to DX10 or 10.1 compliance.
According to this article Series 6XT, which is very similar architecturally to the currently shipping series 6, won't come to market before 2015, likely 2H 2015. This means that Imagination Tech probably won't be at the same level of API compliance as Nvidia and Qualcomm in 2014 and 1H 2015. Not that I think being limited to DX10, OpenGL 3.2, and ES 3.0 until 2H 2015 is a huge deal, but to answer your question:
"You don't think by then PowerVR Series 7 won't be out? You don't think they'll add support for OpenGL 4+ to compete with Tegra K1 by then? "
I can't really agree. While I can't speak well to the android market, the iOS market has a number of CAD apps from well known makers, some of which I use. There are other apps which make use of open GL as well. The more incorporated features the better. These programs, whether on a "classic" OS X or Windows machine, or on iOS,don't normally use directX, which is really intended for gaming, so advances there aren't directly usable, unless OpenGL incorporates a few of the features from that.
I think you misread my post. I wasn't saying companies were going from OpenGL to DirectX. I was saying companies were going from OpenGL ES 3.0 to the full OpenGL (which typically means they also offer DirectX support if their GPU is used in a MS system)
Thats not true, a lot of Autodesk software will use DirectX, and sometimes the software will only have options that will work with DX, or even be DX only. It's not always exactly CAD software but similar type of stuff (3D modelling and/or animation).
No. ES is the future, not just for mobile, but for *all* GPU computing (okay, maybe not for supercomputers, but up to PC's at least).
The reason is because the full OpenGL is a mess, and there have been many tries to break free from the legacy cruft of OpenGL, without any success. ES is the answer to that, because it incorporates only the features that are needed for mobile, so only the high-efficiency features, and it will keep adding (smartly) more features as it evolves.
That being said, Nvidia still has a major advantage with Kepler in Tegra K1, because no other mobile GPU will come even close to feature parity, and even OpenGL ES Next, won't have everything, but I suppose it will have most of the important stuff for mobile, while the others are probably too inefficient to use in mobile anyway (although it does probably making the life of developers who just want to port their PC/PS4 games to mobile much easier).
But even OpenGL ES Next won't be available until 2016. They're barely finalizing it next year, and it will take at least a year more to be adopted in shipping chips. So the founder of Epic Games was right in Nvidia's promo demo when he said he didn't expect the Tegra K1 capabilities to be available for 3-4 years (and that's what it would've happened, if Nvidia didn't release K1 now, which just forces everyone else to move a little fast, but it will still take another 2 years).
It's just more hot air from nvidia though. The reason those features do not currently exist in the mobile space, tessellation and the like is because they are not deemed a good use of area, which they aren't.
Supporting the latest full desktop OpenGL features is great, as well as dx11 (which I doubt will be full feature level) , but what percentage of mobile does that give you? Windows RT and mobile?! This is an ARM chip remember.
SoC makers want small chips and power efficient chips, adding features that cannot be used satisfies neither of those requirements and means in all likelihood tegra will be much larger than competitors.
Also you are very nvidia biased. How is K1 available now? It is no more now from an announcement an OpenGL ES next is from this announcement. You'll be lucky if you see a K1 product by the end of the year
sooner or later you are surely right. in a couple of years you can play todays high end games on your smartphone connected to your 4k display, which has become the lowest standard and is already outshone by those brilliant new 16k displays.
It seems some of the comments are inacurate. I'm a game developer and I work with GL/DX every day. Some notes :
- tesselation. The GL 4.0 offers tesselation as a shader stage which is completely programable and offers very large capabilities. The tesselation that Qualcomm or other mobile companies are talking about is instanced tesselation. This is as much "hardware" as the first one with a lot differences, one that is not as efficient, not as flexible and you have to implement the tesselation algorithm in software(cpu) which is again less effective. I've actually done this but the current Adreno 320/330 drivers crash when they try and compile the shader.
OpenGL the desktop version is indeed a mess, nobody wants "full" opengl anywhere.
Some companies will say their GPU supports DirectX11 when they refer to the API used not the feature level. Windows Phone 8 uses the DirectX 11.1 API with feature level 9_3. As for PowerVR supporting DX10 or OpenGL 3.2, i kind of doubt it, there are no GL ES 3 extensions that would add optional geometry shaders, actually there's no GLES3 extension at all right now and most ES3 implementations suck in some areas, the drivers do not support everything that was intented, like the tesselation rash i mentioned earlier. Maybe the 420 driver will fix it but I reported the issues since August 2013, so yeah they're still working on es 3 support.
If Khronos doesn't make new specs and if gpu companies don't add more features into OpenGL ES you can be sure that developers won't be interested in making or porting hardcore games for mobile, first he specs, then the games.
We’ve updated our terms. By continuing to use the site and/or by logging into your account, you agree to the Site’s updated Terms of Use and Privacy Policy.
19 Comments
Back to Article
da_asmodai - Wednesday, January 8, 2014 - link
I'm not sure what other industries use OpenGL ES but I suspect there is little need for a post 3.0 version in the smartphone/tablet space. Companies seem to be adding full OpenGL/DirectX support to there GPUs as the next step instead.mczak - Wednesday, January 8, 2014 - link
I don't think that's quite true. Series 6 from powervr for instance have tesselation as an optional feature, and I believe none of the shipping or shipping soon SOCs using series 6 have it.But you are obviously right for the IHVs which derive their smartphone/tablet gpu IP from larger chips (intel with bay trail, amd with temash already did this, and now nvidia starting with Tegra 5 too). Qualcomm is also rumored to have tesselation though with Adreno 4xx (and it's not derived from a larger chip). I don't know anything about the other graphic cores floating around (Vivante etc.) but wouldn't be surprised if there's others which can't do tesselation. And I suspect some of the existing ones (like Adreno 3xx) possibly could already do everything required by GLES 4.0 or whatever it's called (I know that some should be able to do some of the new features though I don't really know if they could do all of them).
da_asmodai - Wednesday, January 8, 2014 - link
PowerVR Series 6 from Imagination Technologies support full OpenGL 3.2 and DirectX 10 according to the Wikipedia and they're in products (iPhone) now. OpenGL ES Next isn't even released yet and once released will likely be over a year before products implement it. You don't think by then PowerVR Series 7 won't be out? You don't think they'll add support for OpenGL 4+ to compete with Tegra K1 by then? The Adreno 420 also claims DirectX 11.1 support though I haven't seen a specific OpenGL version assigned. It does however have tessellation hardware. Again though the point is this standard hasn't even be finalized and then it will take time to actually get to market. It won't even match OpenGL 3.0 (NOT ES) and there is already OpenGL 3+ hardware in phones and there will be even more capable GPUs on mobile before this ES Next hits the streets. So sure, you may be able to retroactively say your obsolete hardware (Adreno 3xx for example) support ES Next but who cares?Krysto - Wednesday, January 8, 2014 - link
Wrong again. Imagination will keep Series6 for at least 4-5 years before releasing a new GPU architecture, just like they did for Series5. ARM will do the same with Midgard.That doesn't mean they couldn't try to support the full OpenGL, but it will be faster for them to just wait for OpenGL ES Next, than try and port OpenGL 4.4 or 4.5, which will come out next year, I bet. Even Intel doesn't support more than 4.0 in Haswell, and they barely got that ready, too. I remember saying even here on Anandtech about a year ago how disappointed I was Intel will only come out with OpenGL 3.2 for Haswell. They adopted 4.0 at the last minute. I don't think even Broadwell will support more than 4.2. As for the open source versions of their own drivers, Intel is still only up to 3.3.
So the bottom line is it's very time consuming to support the full OpenGL. Nvidia took a shortcut by porting its PC architecture, which already supported OpenGL 4.4, and has always been up to date with OpenGL support, to mobile. That's why the others will remain so far behind for years. Their only hope to catch up (mostly) is OpenGL ES Next, but they won't do it until 2016, and even that is a little earlier than it would've happened without Nvidia doing what they did. I would've expected them to move to ES 4.0 or whatever in 2017.
da_asmodai - Wednesday, January 8, 2014 - link
So they'll keep calling it Series 6 but they'll keep adding capabilities and Series 6 will span APIs. What they call it really isn't important. The point is that we're at ES 3 now and full OpenGL 3.x seems to be where things are going. I didn't say mobile was going to keep up with the latest and greatest OpenGL specs so yeah maybe OpenGL 4.5 will be out but mobile devices will be supporting only OpenGL 3.2 (which Series 6 has models that already claim to do.) The article specifically states that GL Next will NOT include Geometry shaders and tesselation but mobile hardware is already shipping with these things so leaving them out is not where the industry is going. Now maybe budget phones will support ES Next but top tier phones a year from now are more likely to support full OpenGL 3.2+ then ES Next.tuxRoller - Wednesday, January 8, 2014 - link
The GPU makers could adopt the gallium model so they "only" have to implement hardware enablement for each generation and have a device independent shared ogl/es library.That, of course, would require companies to work together but, in practice, it's the same incentive as moving kernel code upstream.
mczak - Wednesday, January 8, 2014 - link
As I said, PowerVR Series 6 chips can do tesselation (which is a DX11 feature btw, not 10) _optionally_. FWIW I don't think Series 7 is around the corner, powervr just announced some updated Series 6 (6 XT) which have the same feature set (just to get some idea for the timeline a series may stay around, series 5 was the current one for like 8 years, though 5XT was a significant upgrade, and actually some parts of series 5 but definitely not all were already dx10 compliant though I don't know of any such shipping configuration outside of intel's atom platform).If you look at all the Series 6 parts, some are dx10 compliant, some ought to be dx11 compliant, and some only even support feature level 9_3. And I don't think that those shipping (or shipping soon) really could do tesselation - though it's actually very difficult to tell.
dragonsqrrl - Wednesday, January 8, 2014 - link
Just because a GPU supports tessellation doesn't necessarily mean it's DX11 compliant. Tessellation is not a DX11 exclusive feature. AMD included a proprietary tessellator in their HD2000 - HD4000 series cards (that no one ever used), all of which were limited to DX10 or 10.1 compliance.dragonsqrrl - Wednesday, January 8, 2014 - link
Ya, Series 6 is going to be around for a while.http://www.anandtech.com/show/7629/imagination-tec...
According to this article Series 6XT, which is very similar architecturally to the currently shipping series 6, won't come to market before 2015, likely 2H 2015. This means that Imagination Tech probably won't be at the same level of API compliance as Nvidia and Qualcomm in 2014 and 1H 2015. Not that I think being limited to DX10, OpenGL 3.2, and ES 3.0 until 2H 2015 is a huge deal, but to answer your question:
"You don't think by then PowerVR Series 7 won't be out? You don't think they'll add support for OpenGL 4+ to compete with Tegra K1 by then? "
... not necessarily.
melgross - Wednesday, January 8, 2014 - link
I can't really agree. While I can't speak well to the android market, the iOS market has a number of CAD apps from well known makers, some of which I use. There are other apps which make use of open GL as well. The more incorporated features the better. These programs, whether on a "classic" OS X or Windows machine, or on iOS,don't normally use directX, which is really intended for gaming, so advances there aren't directly usable, unless OpenGL incorporates a few of the features from that.da_asmodai - Wednesday, January 8, 2014 - link
I think you misread my post. I wasn't saying companies were going from OpenGL to DirectX. I was saying companies were going from OpenGL ES 3.0 to the full OpenGL (which typically means they also offer DirectX support if their GPU is used in a MS system)B3an - Wednesday, January 8, 2014 - link
Thats not true, a lot of Autodesk software will use DirectX, and sometimes the software will only have options that will work with DX, or even be DX only. It's not always exactly CAD software but similar type of stuff (3D modelling and/or animation).Krysto - Wednesday, January 8, 2014 - link
No. ES is the future, not just for mobile, but for *all* GPU computing (okay, maybe not for supercomputers, but up to PC's at least).The reason is because the full OpenGL is a mess, and there have been many tries to break free from the legacy cruft of OpenGL, without any success. ES is the answer to that, because it incorporates only the features that are needed for mobile, so only the high-efficiency features, and it will keep adding (smartly) more features as it evolves.
That being said, Nvidia still has a major advantage with Kepler in Tegra K1, because no other mobile GPU will come even close to feature parity, and even OpenGL ES Next, won't have everything, but I suppose it will have most of the important stuff for mobile, while the others are probably too inefficient to use in mobile anyway (although it does probably making the life of developers who just want to port their PC/PS4 games to mobile much easier).
But even OpenGL ES Next won't be available until 2016. They're barely finalizing it next year, and it will take at least a year more to be adopted in shipping chips. So the founder of Epic Games was right in Nvidia's promo demo when he said he didn't expect the Tegra K1 capabilities to be available for 3-4 years (and that's what it would've happened, if Nvidia didn't release K1 now, which just forces everyone else to move a little fast, but it will still take another 2 years).
djgandy - Wednesday, January 8, 2014 - link
It's just more hot air from nvidia though. The reason those features do not currently exist in the mobile space, tessellation and the like is because they are not deemed a good use of area, which they aren't.Supporting the latest full desktop OpenGL features is great, as well as dx11 (which I doubt will be full feature level) , but what percentage of mobile does that give you? Windows RT and mobile?! This is an ARM chip remember.
SoC makers want small chips and power efficient chips, adding features that cannot be used satisfies neither of those requirements and means in all likelihood tegra will be much larger than competitors.
djgandy - Wednesday, January 8, 2014 - link
Also you are very nvidia biased. How is K1 available now? It is no more now from an announcement an OpenGL ES next is from this announcement. You'll be lucky if you see a K1 product by the end of the yearMrSpadge - Thursday, January 9, 2014 - link
Thanks for that explanation - since some time I was wondering what the deal was with this ES version and why and where it "suddenly" came from.stefstef - Friday, January 10, 2014 - link
sooner or later you are surely right. in a couple of years you can play todays high endgames on your smartphone connected to your 4k display, which has become the lowest
standard and is already outshone by those brilliant new 16k displays.
alexvoica - Thursday, January 9, 2014 - link
All PowerVR Rogue GPUs (Series6/Series6XT/Series6XE) are designed to fully support OpenGL ES Next.relativegames - Friday, January 10, 2014 - link
It seems some of the comments are inacurate. I'm a game developer and I work with GL/DX every day. Some notes :- tesselation. The GL 4.0 offers tesselation as a shader stage which is completely programable and offers very large capabilities. The tesselation that Qualcomm or other mobile companies are talking about is instanced tesselation. This is as much "hardware" as the first one with a lot differences, one that is not as efficient, not as flexible and you have to implement the tesselation algorithm in software(cpu) which is again less effective. I've actually done this but the current Adreno 320/330 drivers crash when they try and compile the shader.
OpenGL the desktop version is indeed a mess, nobody wants "full" opengl anywhere.
Some companies will say their GPU supports DirectX11 when they refer to the API used not the feature level. Windows Phone 8 uses the DirectX 11.1 API with feature level 9_3. As for PowerVR supporting DX10 or OpenGL 3.2, i kind of doubt it, there are no GL ES 3 extensions that would add optional geometry shaders, actually there's no GLES3 extension at all right now and most ES3 implementations suck in some areas, the drivers do not support everything that was intented, like the tesselation rash i mentioned earlier. Maybe the 420 driver will fix it but I reported the issues since August 2013, so yeah they're still working on es 3 support.
If Khronos doesn't make new specs and if gpu companies don't add more features into OpenGL ES you can be sure that developers won't be interested in making or porting hardcore games for mobile, first he specs, then the games.