It has not been directx vs opengl really. It's more of a direct3d vs opengl as they are really only renderers and not full stacks to build your game off. That being said, using opengl is smart to do because that is a tough part to get right and the other code(sound, input, networking) should have cross platform libraries or be easy enough to create from the native code.