Why you should use OpenGL and not DirectX

Necuno

Court Jester
Joined
Sep 27, 2005
Messages
58,567
Why you should use OpenGL and not DirectX

interesting read over at wolfire.

Often, when we meet other game developers and say that we use OpenGL for our game Overgrowth, we're met with stares of disbelief -- why would anyone use OpenGL? DirectX is the future. When we tell graphics card representatives that we use OpenGL, the temperature of the room drops by ten degrees.

This baffles us. It's common geek wisdom that standards-based websites, for instance, trounce Silverlight, Flash, or ActiveX. Cross-platform development is laudable and smart. No self-respecting geek enjoys dealing with closed-standard Word documents or Exchange servers. What kind of bizarro world is this where engineers are not only going crazy over Microsoft's latest proprietary API, but actively denouncing its open-standard competitor?

Before we dive into the story of why we support OpenGL, let's start with a bit of history:

What is OpenGL?
In 1982, Silicon Graphics started selling high-performance graphics terminals using a proprietary API called Iris GL (GL is short for "graphics library"). Over the years, Iris GL grew bloated and hard to maintain, until Silicon Graphics took a radical new step: they completely refactored Iris GL and made it an open standard. Their competitors could use the new Open Graphics Library (OpenGL), but in return, they had to help maintain it and keep it up to date.

Today, OpenGL is managed by the Khronos Group -- a non-profit organization with representatives from many companies that are interested in maintaining high-quality media APIs. At a lower level, it's managed by the OpenGL Architecture Review Board (ARB). OpenGL is supported on every gaming platform, including Mac, Windows, Linux, PS3 (as a GCM wrapper), Wii, iPhone, PSP, and DS. Well, every gaming platform except for the XBox -- which brings us to our next topic:

What is DirectX?
Ever since MS-DOS, Microsoft has understood that games play an important role in users' choice of operating systems. For this reason, in 1995, they created a proprietary set of libraries in order to encourage exclusive games for their new Windows 95 operating system. These libraries included Direct3D, DirectInput and DirectSound, and the entire collection came to be known as DirectX. When Microsoft entered the gaming market in 2001, it introduced the DirectX Box, or XBox for short. The XBox was a loss leader (losing over 4 billion dollars), intended to set the stage to dominate the games market in the next generation.

Looking at the games scene now, it's clear that this strategy is succeeding. Most major PC games now use DirectX, and run on both Windows and XBox 360. With few exceptions, they don't work on competing platforms, such as Playstation, Mac OS, and Wii. These are significant markets to leave out, bringing us to the big question:

Why does everyone use DirectX?....
 

The_Unbeliever

Honorary Master
Joined
Apr 19, 2005
Messages
103,196
nutshell :

dirextx = captivex, binds you to only one platform, namely winders

opengl = open standards, can be used on any platform
 

semiautomatix

Honorary Master
Joined
Nov 9, 2005
Messages
11,914
Microsoft, and DirectX are like the Hotel California: "You can check out any time you like, but you can never leave!"

An interesting read nonetheless, thanks!
 

davemc

Executive Member
Joined
Apr 8, 2009
Messages
6,518
But, OpenGL simply do not have up-to-date drivers quickly enough.
 

grayston

Expert Member
Joined
Jul 24, 2007
Messages
3,733
But, OpenGL simply do not have up-to-date drivers quickly enough.

So? Older drivers are more likely to be stable. What would you prefer: a game that looks like Avatar 3D on crack but crashes every 5 minutes, or a great-looking game that plays like a dream?

You want the Avatar 3D on crack, don't you...
 
Top