DirectX, OpenGL и Vulkan — простыми словами
В настройках графики встречаются пункты DirectX 11, DirectX 12, Vulkan, иногда OpenGL. Это графические API — стандартные наборы команд, через которые игра обращается к видеокарте. Полная история от DOS до нейросетей — История DirectX.
Словарь
| Слово | Простое объяснение |
|---|---|
| API | "Язык" между игрой и железом. Игра говорит "нарисуй модель", API передаёт команду дальше. |
| GPU | Графический чип на видеокарте. Считает картинку. |
| Драйвер | Программа от NVIDIA, AMD или Intel. Связывает API с вашей конкретной картой. |
| Шейдер | Маленькая программа на GPU. Отвечает за внешний вид воды, металла, травы. |
| FPS | Кадров в секунду. Плавность картинки. |
| Растеризация | Обычный способ рисовать 3D без симуляции каждого луча света. |
| Трассировка лучей | Более реалистичный свет и отражения. Сильно нагружает GPU. |
Как картинка доходит до монитора
Игра сама по себе не рисует пиксели на экране. Цепочка выглядит так.
- Игра формирует сцену — модели, текстуры, источники света.
- Графический API (DirectX, Vulkan или OpenGL) переводит это в команды для GPU.
- Драйвер видеокарты адаптирует команды под вашу модель GPU.
- GPU считает кадр.
- Монитор показывает готовую картинку.
Без общего API каждая студия писала бы отдельный код под каждую видеокарту. Так и было в начале 1990-х, пока Microsoft не продвинула DirectX.
Подробнее о стеке — Графические данные, как устроен компьютер.
Три названия в меню настроек
| API | Кто сделал | Где встречается |
|---|---|---|
| DirectX | Microsoft | Windows, Xbox. Почти все крупные PC-игры. В меню — DX11, DX12. |
| OpenGL | Открытый стандарт (Khronos Group) | Старые и инди-игры, эмуляторы. На Mac больше не развивается. |
| Vulkan | Khronos Group | Linux, 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, графика, ПК как игровая платформа.
См. также
- Компьютерные игры
- DLSS и FSR — апскейлинг в играх
- Компьютерные игры — о разделе
- Игровая индустрия — о разделе
- Персональные компьютеры как игровая платформа
- Советы по FPS