Вообще там интересный прикол был. Direct3D выгодно отличался от OpenGL тем, что он был одинаковым на всех видеокартах. Один раз написал - везде работает. Тогда как OpenGL везде был разным. Потому что любой вендор мог добавить своё расширение, не спрашивая ни у кого разрешения. У разработчиков был выбор: использовать OpenGL и больше возможностей, или использовать Direct3D и освободить себя от "головняка" с поддержкой 5-ти разных вендоров видеокарт.После появления Direct3D 8 фич оказалось больше у Direct3D, вследствие чего OpenGL лишился своего основного преимущества. Разработчики игр ушли на Direct3D. 2004 год - примерная точка отсчёта, когда в новые игры перестали добавлять OpenGL. Показательный пример - Far Cry, в настройках которого есть выпадающий список с доступными API, в котором лишь один Direct3D9. Можно разблокировать OpenGL в конфиге, но тогда рендерер недоделан, и пропадают то чанки, то шейдерные элементы (лестницы наверх). Другой пример - Half Life 2, который базируется на движке Source, который раньше был Quake Engine, то есть OpenGL. У движка Source - интересная история разработки, когда в какой-то момент времени он стал настолько бурно развиваться, что OpenGL тупо дропнули - чтобы не тормозить процесс. Напомню, в Unreal Tournament 2004 даже теней от персонажей не было в режиме OpenGL - лишь в последнем патче Icculus таки добавил тени, но только для NVIDIA через соответствующее NV-расширение. В апстрим оно попало позже, когда выход новых патчей ужа давно прекратился.
В теории, в любой момент могла произойти ситуация, когда тот или иной вердор разработал фичу, которой нет в Direct3D, и Майкрософт не торопится её добавлять. Так например было с Bump Mapping во времена острой конкуренции между OpenGL и Direct3D. Эта фича была только у одного вендора - по-моему Matrox. Поэтому Microsoft не стал добавлять её в стандарт, чтобы не создавать ситуацию, при которой ни один вендор не совместим с Direct3D 7, кроме Matrox. Или вот пример посвещее, когда Direct3D уже был, можно сказать, безальтернативным. Поддержка тесселяции в Radeon HD 2000-й серии. В NVIDIA её не было, поэтому в Direct3D её тоже добавлять не стали. В итоге тесселяцию можно было "пощупать" только через OpenGL-расширение, чего не сделал практически никто. Поэтому AMD удалила эту фичу на какое-то время из Radeon HD 3000 series, чтобы вернуть в Radeon HD 5000, когда вышел Direct3D 11.
И вот наступает 2012 год. Microsoft устраивает презентацию Windows 8. Примечательно, что люди в студии демонстрируют новые фичи Windows 8, беря в руки каждый раз новое устройство. Чтобы не возникало казусов, по типу "синего экрана" на презентации Windows 98. Тогда же показали прототип Direct3D 12 на примере Unreal Tournament 4 (который тогда был в стадии альфа и был доступен для бесплатного скачивания. После успеха Fortnite, разработка была прекращена). И вот появляется новое поколение видеокарт NVIDIA и AMD, и вот выходит новая винда... в которой не было нового Direct3D, а следовательно - новых фич. Не знаю, может быть была выпущена версия 11.1, или типа того. Но как я понял, воспользоваться новыми фичами, по типу SPIR-V, в новом директиксе было нельзя.
NVIDIA после этого откопала OpenGL, который на её картах и до этого работал прекрасно. OpenGL 3 имел паритет с Direct3D 10, а OpenGL 4 - с Direct3D 11. AMD же, в свою очередь, выпустила Mantle. Что было дальше, вы в курсе. С Mantle были "слизаны" и Direct3D 12, и Metal. Потом Mantle открыли под названием Vulkan.
К чему это я? Таки да, вы правы. В то время Microsoft занималась выпуском новых релизов Direct3D довольно часто, потому что добавлять новые фичи могла только она. А фичи тогда появлялись особенно часто. Теперь же, Microsoft обленилась, не стала выпускать DirectX 12 вовремя, вследствие чего появился Vulkan. Наверняка в Microsoft думали "а куда вы денетесь с подводной лодки?", а оно вон как оказалось...