Создание игровых движков: Vulkan и первый треугольник
Это отправная точка для любого, кто хочет работать с современной графикой. Vulkan — это мощный, но сложный графический API. Наша цель — пройти путь от инициализации до отрисовки первого цветного треугольника на экране.
Выжимка из туториала vulkan-tutorial.com:
- Настройка окружения: Установка Vulkan SDK, GLFW для создания окна и GLM для математики.
- Инициализация: Создание `VkInstance` и выбор физического устройства (`VkPhysicalDevice`).
- Логическое устройство и очереди: Создание `VkDevice` и получение дескрипторов очередей для отправки команд.
- Swap Chain: Настройка цепочки обмена для вывода изображений на экран.
- Графический конвейер (Graphics Pipeline): Самый сложный этап. Определение вершинного и фрагментного шейдеров, состояний растеризации, вьюпорта и т.д.
- Командные буферы: Запись команд рендеринга (привязка конвейера, начало рендер-пасса, команда отрисовки, конец рендер-пасса).
- Рендеринг и синхронизация: Отправка командного буфера в очередь и использование семафоров и фенсов для синхронизации с GPU.
Пройдя этот путь, вы получите фундамент для построения собственного рендерера.