DirectX is the problem. It runs only on Windows. Even for the XBox 360 games have to be ported to the APIs it uses. It's easier than DX to OGL/OAL/etc., but it's still a porting effort. In comparison OpenGL ES is far more supported, even on the consoles, and being a subset of OpenGL it runs on PCs and Macs as well.Missing the point for most people... they don't care about the politics of OpenGL vs Direct3D, open source vs proprietary, they just want it to work with the least amount of hassle.
DirectX not running on Linux is the main barrier and will be for some time even if ALL games start getting programmed in OpenGL for some reason. Most people don't only play brand new games. What if I wanted to fire up any of the dozens of games I play sometimes that have been made in the past ten years?
DirectX is also never going to work on Linux, OS X and such. There just isn't the push for it. Valve just uses OpenGL for its OS X efforts, adding an OpenGL rendering path to their engine. The DX games which work with WINE changes with each release and is unlikely to ever become stable enough to write a game for.