Перейти к основному содержимому

DirectX, OpenGL и Vulkan — простыми словами

Всем

В настройках графики встречаются пункты DirectX 11, DirectX 12, Vulkan, иногда OpenGL. Это графические API — стандартные наборы команд, через которые игра обращается к видеокарте. Полная история от DOS до нейросетей — История DirectX.


Словарь

СловоПростое объяснение
API"Язык" между игрой и железом. Игра говорит "нарисуй модель", API передаёт команду дальше.
GPUГрафический чип на видеокарте. Считает картинку.
ДрайверПрограмма от NVIDIA, AMD или Intel. Связывает API с вашей конкретной картой.
ШейдерМаленькая программа на GPU. Отвечает за внешний вид воды, металла, травы.
FPSКадров в секунду. Плавность картинки.
РастеризацияОбычный способ рисовать 3D без симуляции каждого луча света.
Трассировка лучейБолее реалистичный свет и отражения. Сильно нагружает GPU.

Как картинка доходит до монитора

Игра сама по себе не рисует пиксели на экране. Цепочка выглядит так.

  1. Игра формирует сцену — модели, текстуры, источники света.
  2. Графический API (DirectX, Vulkan или OpenGL) переводит это в команды для GPU.
  3. Драйвер видеокарты адаптирует команды под вашу модель GPU.
  4. GPU считает кадр.
  5. Монитор показывает готовую картинку.

Без общего API каждая студия писала бы отдельный код под каждую видеокарту. Так и было в начале 1990-х, пока Microsoft не продвинула DirectX.

Подробнее о стеке — Графические данные, как устроен компьютер.


Три названия в меню настроек

APIКто сделалГде встречается
DirectXMicrosoftWindows, Xbox. Почти все крупные PC-игры. В меню — DX11, DX12.
OpenGLОткрытый стандарт (Khronos Group)Старые и инди-игры, эмуляторы. На Mac больше не развивается.
VulkanKhronos GroupLinux, Android, Nintendo Switch. В PC-играх — отдельный пункт в настройках.

На iPhone, iPad и Mac у Apple свой API — Metal. В меню его не выбирают. Это единственный путь к GPU на устройстве Apple.

Краткое сравнение для разработчиков — Графические API в разработке игр.


DirectX — главный API Windows

Microsoft выпустила DirectX в 1995, чтобы игры нормально работали в Windows, а не только в DOS. Вехи, которые полезно знать игроку.

  • Doom 95 и релиз Windows 95 — PC-игры массово переехали в окна ОС.
  • DirectX 9 (2002–2004) — долгий стандарт. На нём годами держались онлайн-игры вроде CS:GO и Dota 2.
  • DirectX 11 (2009) — самый совместимый вариант на старом железе.
  • DirectX 12 (2015) — меньше нагрузка на процессор, но возможны фризы при первом заходе в новую локацию. GPU компилирует шейдеры прямо во время игры.
  • Сейчас — трассировка лучей, DLSS / FSR (апскейл через нейросеть или алгоритм) и метка DirectX 12 Ultimate на новых играх и Xbox. Как устроены апскейлеры и чем отличаются версии — DLSS и FSR — апскейлинг в играх.

Подробности, WinG, Crysis и война видеокарт — История DirectX.


OpenGL и Vulkan

OpenGL появился в 1992, раньше массового Direct3D. Долго был главным путём для игр на Linux и macOS. Классические шутеры id Software (Quake) шли на OpenGL. Со временем стандарт устарел — плохо загружал многоядерные процессоры. С 2018 Apple заменила OpenGL на Metal.

Vulkan вышел в 2016. Открытый API с низкими накладными расходами, близкий по идее к DirectX 12. Один и тот же рендер можно использовать на PC и Linux.

На Steam Deck и Linux игры с Windows запускают через Proton. Внутри DirectX переводят в Vulkan. Без Vulkan современный PC-гейминг на Linux был бы сильно беднее — см. Linux-гейминг и Proton и Steam. Подробный разбор консоли — Как устроен Steam Deck.


Что выбрать в настройках

Ориентиры для игрока на Windows.

  • Оставить по умолчанию — безопасный вариант. Игра сама подберёт рабочий API.
  • Лаги и вылеты на слабом ПК — попробовать DirectX 11 вместо 12, если в меню есть выбор.
  • Vulkan — имеет смысл, если игра официально его поддерживает и в отзывах пишут про прирост FPS на вашей видеокарте. Универсального правила "Vulkan всегда лучше" нет.
  • Надпись "только DX12" в рекламе — не гарантия, что на DX11 картинка принципиально хуже. Иногда эффекты блокировали в конфиге игры, без ограничений со стороны железа.

Обновление драйвера видеокарты обычно полезнее, чем переключение API наугад. Советы при просадке FPS — итоги раздела "Компьютерные игры".


Итог

  • DirectX — основной API игр на Windows и Xbox.
  • Vulkan — современный открытый API для PC, Linux, Android.
  • OpenGL — наследие прошлых десятилетий; в новых проектах почти не используется.
  • Все три решают одну задачу — передать команды от игры к видеокарте.

Дальше по уровню сложности — История DirectX, графика, ПК как игровая платформа.


См. также