Monday, July 22nd 2013

Khronos Releases OpenGL 4.4 Specification

The Khronos Group today announced the immediate release of the OpenGL 4.4 specification, bringing the very latest graphics functionality to the most advanced and widely adopted cross-platform 2D and 3D graphics API (application programming interface). OpenGL 4.4 unlocks capabilities of today's leading-edge graphics hardware while maintaining full backwards compatibility, enabling applications to incrementally use new features while portably accessing state-of-the-art graphics processing units (GPUs) across diverse operating systems and platforms. Also, OpenGL 4.4 defines new functionality to streamline the porting of applications and titles from other platforms and APIs. The full specification and reference materials are available for immediate download here.

In addition to the OpenGL 4.4 specification, the OpenGL ARB (Architecture Review Board) Working Group at Khronos has created the first set of formal OpenGL conformance tests since OpenGL 2.0. Khronos will offer certification of drivers from version 3.3, and full certification is mandatory for OpenGL 4.4 and onwards. This will help reduce differences between multiple vendors' OpenGL drivers, resulting in enhanced portability for developers. "The delivery of conformance tests for OpenGL 4.4 is a significant milestone - as it is vital for developers to be able to rely on the API they are trusting to accelerate their content across multiple platforms," said Barthold Lichtenbelt, OpenGL ARB working group chair. "The OpenGL ARB is committed to continue to deepen communications with the developer community so we can continue to build OpenGL functionality that creates real-world business opportunities for the 3D industry."

New functionality in the OpenGL 4.4 specification includes:
Buffer Placement Control (GL_ARB_buffer_storage)
Significantly enhances memory flexibility and efficiency through explicit control over the position of buffers in the graphics and system memory, together with cache behavior control - including the ability of the CPU to map a buffer for direct use by a GPU.

Efficient Asynchronous Queries (GL_ARB_query_buffer_object)
Buffer objects can be the direct target of a query to avoid the CPU waiting for the result and stalling the graphics pipeline. This provides significantly boosted performance for applications that intend to subsequently use the results of queries on the GPU, such as dynamic quality reduction strategies based on performance metrics.

Shader Variable Layout (GL_ARB_enhanced_layouts)
Detailed control over placement of shader interface variables, including the ability to pack vectors efficiently with scalar types. Includes full control over variable layout inside uniform blocks and enables shaders to specify transform feedback variables and buffer layout.

Efficient Multiple Object Binding (GL_ARB_multi_bind)
New commands which enable an application to bind or unbind sets of objects with one API call instead of separate commands for each bind operation, amortizing the function call, name space lookup, and potential locking overhead. The core rendering loop of many graphics applications frequently binds different sets of textures, samplers, images, vertex buffers, and uniform buffers and so this can significantly reduce CPU overhead and improve performance.

Streamlined Porting of Direct3D applications
A number of core functions contribute to easier porting of applications and games written in Direct3D including GL_ARB_buffer_storage for buffer placement control, GL_ARB_vertex_type_10f_11f_11f_rev which creates a vertex data type that packs three components in a 32 bit value that provides a performance improvement for lower precision vertices and is a format used by Direct3D, and GL_ARB_texture_mirror_clamp_to_edge that provides a texture clamping mode also used by Direct3D.

Extensions released alongside the OpenGL 4.4 specification include:
  • Bindless Texture Extension (GL_ARB_bindless_texture): Shaders can now access an effectively unlimited number of texture and image resources directly by virtual addresses. This bindless texture approach avoids the application overhead due to explicitly binding a small window of accessible textures. Ray tracing and global illumination algorithms are faster and simpler with unfettered access to a virtual world's entire texture set.
  • Sparse Texture Extension (GL_ARB_sparse_texture): Enables handling of huge textures that are much larger than the GPUs physical memory by allowing an application to select which regions of the texture are resident for 'mega-texture' algorithms and very large data-set visualizations.
Industry Support
"AMD has a long tradition of supporting open industry standards, and congratulates the Khronos Group on the announcement of the OpenGL 4.4 specification for state-of-the-art graphics processing," said Matt Skynner, corporate vice president and general manager, Graphics Business Unit, AMD. "Maintaining and enhancing OpenGL as a strong and viable graphics API is very important to AMD in support of our APUs and GPUs. We're proud to continue support for the OpenGL development community."

"We worked closely with Khronos on OpenGL 4.4, so we wanted to make sure the day it was announced we had compliant drivers for our Fermi and Kepler GPUs," said Tony Tamasi, senior vice president, Content and Technology at NVIDIA. "We're also working to bring support to Tegra, so developers can create amazing content that scales from high-end PCs down to mobile devices." (These products are based on the published OpenGL 4.4 Specification, and are submitted to, and are expected to pass, the Khronos Conformance Testing Process. Current conformance status can be found at www.khronos.org/conformance.)

OpenGL BOF at SIGGRAPH, Anaheim, CA July 24th 2013
There is an OpenGL BOF "Birds of a Feather" Meeting on Wednesday, July 24th at 7-8PM at the Hilton Anaheim, California Ballroom A & B, where attendees are invited to meet OpenGL implementers and developers and learn more about the new OpenGL 4.4 specification.
Add your own comment

25 Comments on Khronos Releases OpenGL 4.4 Specification

#1
lobsterrock
Streamlined Porting of Direct3D applications
A number of core functions contribute to easier porting of applications and games written in Direct3D
Hopefully steam for linux will grow faster now.
Posted on Reply
#2
Prima.Vera
To bad the game companies are not coding games primary for OpenGL. Is so much better than Direct3D11
Posted on Reply
#3
happita
I'm not a coder nor do I know anything about the industry, but I like OpenGL just for the fact that it isn't Microshit. Once things become the norm for long periods of time (ex. windows os on desktops), monopolies form and become money hungry sobs. I'm all for alternatives :toast:

On a side note, smartphone games only use OpenGL 2.0 right now if I'm not mistaken. They already release 4.4 and we aren't even utilizing 4.0 on smartphone games yet, or even 3.0! And from what I've heard, the HTC One just got support for 3.0. Can't wait to see what the next-gen of mobile games will bring :)
Posted on Reply
#4
crazyeyesreaper
Chief Broken Rig
wrong ^ Smartphones use OpenGL ES
http://en.wikipedia.org/wiki/OpenGL_ES

As of Open GL 4.1 they are compatibile with each other so a game using Open GL ES will run on desktops just fine. Open GL tends to lag behind Direct X in terms of features but once fully implemented and used properly they usually do end up a bit more efficient and in general can be a bit more versatile.
Posted on Reply
#5
AsRock
TPU addict
Prima.Vera said:
To bad the game companies are not coding games primary for OpenGL. Is so much better than Direct3D11
Yeah maybe more will join over time

Euro Truck Sim 2 uses it and i can tell ya it's every bit as good as DX as you can run the game under either.
Posted on Reply
#6
The Quim Reaper
I'd imagine this will be useful for Playstation 4 developers as it uses a custom tool set based on OpenGL.
Posted on Reply
#7
Jstn7477
I would just be happy if developers stopped using DX9 at the least. I'm tired of my high FPS gaming being ruined by "system overhead" where neither my CPU or GPU are close to being fully loaded and yet my FPS falls off a cliff. Far Cry 3 and Tomb Raider 2013 are great examples of what I want to see, as they keep my HD 7970 loaded at 99% usage and the CPU usage is perfectly balanced across four CPU cores.
Posted on Reply
#8
lobsterrock
AsRock said:
Yeah maybe more will join over time

Euro Truck Sim 2 uses it and i can tell ya it's every bit as good as DX as you can run the game under either.
Dang, that game looks good for a simulator game. Seriously, compared to train simulator or farm simulator etc.
Posted on Reply
#9
Derek12
I'll believe OpenGL will rule and also I hope to:

AFAIK PS4 will be OpenGL and IDK if Wii U is.
Linux, Mac OS, Android, iOS, all use OpenGL and all of these are growing very fast. The last two being OpenGL ES which is a subset of OpenGL. It will be more easily to release multis if using the same API.
It's free and more powerful.

DirectX is isolated.



happita said:

On a side note, smartphone games only use OpenGL 2.0 right now if I'm not mistaken. They already release 4.4 and we aren't even utilizing 4.0 on smartphone games yet, or even 3.0! And from what I've heard, the HTC One just got support for 3.0. Can't wait to see what the next-gen of mobile games will bring :)
Only HTC One or Android 4.3 devices in general? (or does that depend on the SOC too)? That will be cool :toast:.
Posted on Reply
#10
dir_d
What would really be cool is if sony were to tweak the ps4 OS some and release it for PC's. I know there would be alot of work involved but one could dream of having Playstation OS for playing games based off BSD.
Posted on Reply
#11
AsRock
TPU addict
lobsterrock said:
Dang, that game looks good for a simulator game. Seriously, compared to train simulator or farm simulator etc.
Could always check the demo out http://store.steampowered.com/app/227300/?snr=1_7_15__13


Umm it be nice if steam links were treated like newegg links ( if it's possible :P )
Posted on Reply
#12
happita
crazyeyesreaper said:
wrong ^ Smartphones use OpenGL ES
http://en.wikipedia.org/wiki/OpenGL_ES

As of Open GL 4.1 they are compatibile with each other so a game using Open GL ES will run on desktops just fine. Open GL tends to lag behind Direct X in terms of features but once fully implemented and used properly they usually do end up a bit more efficient and in general can be a bit more versatile.
AH, HA!! I knew there was some flaw in my post. Found that out just by googling around here and there :p
Posted on Reply
#13
KainXS
Wii, Wii U, 3DS, PS3, PS4 uses customized versions of OpenGL(ES)
Xbox 360 uses a custom DX10
Xbox One uses DX11.2

OpenGL really needs to take over at this point.
Posted on Reply
#14
crazyeyesreaper
Chief Broken Rig
PS3 actually has seperate code path that is not Open GL its called GCM, that said the PS3 can utilize Open GL ES 2.0 but few games actually use that path. This is why ports to PS3 from 360 games tend to run well poorly examples being Mass Effect 3 and a few others where the frame rate can be nearly 20% lower than its competitor. as for the other consoles I have no checked what they use.

Essentially 360 / PS3 / PC all had different standards thus crappy ports

XBone being 11.2 will help PC ports immensely as the API is now uniform with 11.2 only adding a few things no one actually seems to use and will probably be limited to console exclusives where as Xbox 360 was more of a Hybrid between DX9 and DX10 it didnt have all the features of 10 but was more advanced and DX9.
Posted on Reply
#15
semantics
Yeah Playstation games mostly uses the LibGCM with that icky emulation layer. Anyways If developers are properly agnostic about their development porting is all around the same-ish if you're making a game for windows, linux, freeBSD, mac, android, at the end of the day even if you made a game with openGL it doesn't mean it will run on all the platforms due to small quarks in implementation there will be a cost still involved.

One of the strongest reason for a company to use DirectX is the support and a very strong tools for development. Else why would companies pay extra to Microsoft just to produce and sell a game in DirectX. Anyways i just don't like driver implementation of OpenGL compared to DirectX and dealing with the shader compiler. Pretty much the reasons why i think openGL will never overtake DirectX. DirectX as a package not just D3D vs OpenGL is why games wont be using OpenGL.
Posted on Reply
#16
_larry
So does this make Doom 3 and Quake 4 look better or something? What other games actually use OpenGL..?
Posted on Reply
#17
NdMk2o1o
happita said:
I'm not a coder nor do I know anything about the industry, but I like OpenGL just for the fact that it isn't Microshit.
Well folks, I don't know shit about the shit that I'm talking bout but I know I hate that damn MS, they nasty, they evil, they big corporation and I don't like them, (I just happen to use their IP 95% of the time but I don't like them)

Some people need a good slap if you ask me, that's if you do ask me...
Posted on Reply
#18
crazyeyesreaper
Chief Broken Rig
_larry said:
So does this make Doom 3 and Quake 4 look better or something? What other games actually use OpenGL..?
Generally up untill Open GL 2.0 the Open GL API was far ahead of Direct X however 3D Labs rebuilt Open GL and essentially fucked it up, then with Open GL 3.0 the consortium behind it took 2 years to rewrite it and accomplished nothing.

Essentially when utilized properly Open GL is an amazing API, just years of missteps and miss-management have kicked it in the balls a few to many times.

http://en.wikipedia.org/wiki/List_of_OpenGL_programs

BUt yea in the early days Open GL was usually first with new feature to improve rendering quality and performance. All pretty much gone to hell now tho. Essentially Open GL is a viable strong API again, but do to how things were so abysmal for so long many developers not stick with Direct X.
Posted on Reply
#19
NeoXF
Radeon HD 7790 uses GCN 1.1 cores... which are OpenGL 4.3 compliant. And I do believe the APUs inside PS4/XBO use it too. Either way, they are very feature packed, I doubt that 4.4 couldn't be patched in with driver, as nVidia did so many times before.

If I ever get my coding act together, I'm pretty sure OpenGL will be my choice.

Wolfenstein: The New Order and Doom 4 (if it's still game...) are some of the OpenGL AAA titles coming up in the future, there's more, but I don't have time now to enumerate.
Posted on Reply
#20
Derek12
semantics said:
Pretty much the reasons why i think openGL will never overtake DirectX. DirectX as a package not just D3D vs OpenGL is why games wont be using OpenGL.
Non MS software on the rise.
Linux, Mac, Android, iOS, 3DS, PS4, WiiU, WebGL, and almost everything non-MS are OpenGL (ES) or derived and don't support DX. Windows supports OpenGL too. That's sufficient devs will shift to it. because it is universal now unlike DirectX which is MS only.
OpenGL is the new HTML5 and DirectX is the new Flash. Time will tell.

As Adobe did with HTML5, Microsoft should join OpenGL.

NdMk2o1o said:
Well folks, I don't know shit about the shit that I'm talking bout but I know I hate that damn MS, they nasty, they evil, they big corporation and I don't like them, (I just happen to use their IP 95% of the time but I don't like them)

Some people need a good slap if you ask me, that's if you do ask me...
And using Windows 7 made by Microshit :slap:
Posted on Reply
#21
racedaemon
btarunr said:
  • Bindless Texture Extension (GL_ARB_bindless_texture): Shaders can now access an effectively unlimited number of texture and image resources directly by virtual addresses. This bindless texture approach avoids the application overhead due to explicitly binding a small window of accessible textures. Ray tracing and global illumination algorithms are faster and simpler with unfettered access to a virtual world's entire texture set.
  • Sparse Texture Extension (GL_ARB_sparse_texture): Enables handling of huge textures that are much larger than the GPUs physical memory by allowing an application to select which regions of the texture are resident for 'mega-texture' algorithms and very large data-set visualizations.

I'm no programmer but this part seems remarkably similar to "Tiled Resources" of DX 11.2.

I've read comments stating that this could have been done much earlier, in the era of small GPU memory and that it was even implemented bye the developer of Rage. So, all this delay and spontaneous synchronization regarding this feature between DX and GL seems a bit like a conspiracy towards pushing users to buy overpriced, profit margin happy, GPUs with more memory.

In fact, let's not call it conspiracy, let's call it collusion. :)

I hope that this wasn't the case, because i would be pissed. :)
Posted on Reply
#22
jagd
It is Microsoft to blame , no DX 10-11 for win XP , No DX 9= No sale to win XP using crowd for gaming companies .

Jstn7477 said:
I would just be happy if developers stopped using DX9 at the least.
Posted on Reply
#23
theoneandonlymrk
racedaemon said:
I'm no programmer but this part seems remarkably similar to "Tiled Resources" of DX 11.2.

I've read comments stating that this could have been done much earlier, in the era of small GPU memory and that it was even implemented bye the developer of Rage. So, all this delay and spontaneous synchronization regarding this feature between DX and GL seems a bit like a conspiracy towards pushing users to buy overpriced, profit margin happy, GPUs with more memory.

In fact, let's not call it conspiracy, let's call it collusion. :)

I hope that this wasn't the case, because i would be pissed. :)
though your right they are all for similar purposes,, they have now made it much easier for everyone to use.not me though im no programmer:o
Posted on Reply
#24
Prima.Vera
Derek12 said:
Non MS software on the rise.
Linux, Mac, Android, iOS, 3DS, PS4, WiiU, WebGL, and almost everything non-MS are OpenGL (ES) or derived and don't support DX. Windows supports OpenGL too. That's sufficient devs will shift to it. because it is universal now unlike DirectX which is MS only.
OpenGL is the new HTML5 and DirectX is the new Flash. Time will tell.

As Adobe did with HTML5, Microsoft should join OpenGL.
Let's not forget that ALL the professional 3D Design Software companies are only using OpenGL as their 3D API. ALL the digital special effects Hollywood are using are rendered through OpenGL only.
Posted on Reply
#25
NeoXF
And AMD just now released drivers with support for 4.3, slightly late, but they said 4.4 is in the pipe too.
Posted on Reply
Add your own comment