Quantcast

OpenGL vs DirectX: The Graphics API Wars Begin Anew

By Matthew Braga

According to Google, the OS of the future will live in the browser — their browser — which means your games will too.

Embedding Pacman in a web browser's search engine? That was just the start. If Google has its way, the future of desktop gaming might lie with Chrome. It's an ambitious vision, but one the company seems set to follow, with technologies like Native Client and WebGL aiming to bring some added performance to web-based apps. The result, in theory, is a new generation of graphically rich and connected games — meaning it may not be long before we're playing Duke Nukem Forever in HTML5. 

However, that means saying goodbye to DirectX. All development for Chrome is rooted in OpenGL — even in Windows, where Microsoft's API reigns supreme. But with Google's tech still in its infancy, it could be a while longer before anyone cares. Nevertheless, the search giant's public support for OpenGL has the potential for a API showdown — and that means big things for gamers, not all of them good. 
  
Quake, running in-browser with HTML 5. 
ANGLE, short for Almost Native Graphics Layer Engine. Similar to Native Client, ANGLE is supposed to give developers access to a computer's native graphics layer — OpenGL under Linux and OS X. But when it comes to Windows, "most graphics-intensive apps use Microsoft Direct3D APIs instead of OpenGL, so OpenGL drivers are not always available." Instead of alienating their PC user base, "ANGLE will allow Windows users to run WebGL content without having to find and install new drivers for their system."
 
In fact, the whole system sounds like Wine in reverse.
 
 Some of the work Transgaming has done in the past is being applied to Google's ANGLE.
Transgaming, the company behind Cider and Cedega is working with Google on the ANGLE project. Without all the reverse engineering the company has done on the DirectX API, none of this would have been possible.

For Google, the big advantage to this approach is portability. A developer writing code for Chrome can be sure that their software will function correctly across all major platforms. There are few worries about compatibility because ANGLE makes such concerns moot — but in the process, makes OpenGL the API standard for games and developers.

Not everyone is happy with this, of course. Gamers in the nineties might remember the API war that separated developers like John Carmack of ID software from others in the industry. When discussing the development of Quake 2, Carmack derided DirectX for being "painful" to code for, and a waste of time. Arguments on the superiority of each API have continued over the years, but with few major differences between the two, there remains no clear-cut winner. While today, DirectX is used most frequently, the imminent release of ChromeOS and Google-powered laptops could easily change that.

Valve recently ported the Source Engine to OpenGL for use on OS X, and soon, Linux. 


Of course, Google looks at the situation from a different perspective. Considering almost all mobile platforms today employ OpenGL for graphical duties, the company hopes ANGLE will make it easier to prototype and test Windows ports of mobile software. That could very well prove to be true, but when ANGLE becomes competent enough at translating API calls, mobile developers may not even opt for porting their code to native DirectX at all.

Either way, Google is playing an interesting game with ANGLE and WebGL. On its own, the software is nothing more than a project to expand the usefulness of OpenGL. But combined with ChromeOS, and a wider proliferation across desktop machines, Google's vision of our gaming future could be a lot more open than you think.  
 
Images via Google, Transgaming, Valve.