Direct3D - был создан для использования в играх, имеющих относительно малое число полигонов, но насыщенные большим количеством текстур и визуальных эффктов
OpenGL - разрабатывался для CAD систем, как стандарт для отображения высокополигональных объектов в различных видах (wireframe, shaded и т.д.)
Со временем "оброс" дополнительными функциями (в основном для отображения визуальных эффектов в тех же играх)
Поэтому в большинстве 3-D приложений рекомендуется использовать OpenGL... А в играх.. ну тут как повезёт... всё-таки бОльшее их число "заточено" под Direct3D