Vulkan

Vulkan - это новый графический API от Khronos Group, предоставляющий разработчикам приложений низкоуровневый доступ к графическим и вычислительным возможностям современных видеокарт. На этой странице я буду постепенно публиковать свой прогресс в освоении этого API, а также различные полезные ссылки.

Мои проекты

https://github.com/gecko0307/vulkan-demos
Мои первые эксперименты с Vulkan на языке D. Пока ничего особо впечатляющего нет - просто костяк, включающий создание всех объектов Vulkan и простейший цикл отрисовки, закрашивающий экран синим цветом.

Спецификация

https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html
Спецификация Vulkan 1.0.

Инструменты разработчика

https://lunarg.com/vulkan-sdk
Де-факто стандартный Vulkan SDK для Windows и Linux. Разрабатывается компанией LunarG, спонсируется Valve.

https://www.khronos.org/opengles/sdk/tools/Reference-Compiler
Референсный компилятор GLSL от Khronos Group. Его основное предназначение - валидация программ, но он также умеет компилировать в SPIR-V, поэтому его можно использовать для сборки шейдеров под Vulkan. Правда, поддержка SPIR-V, как указано на официальной странице, экспериментальна и неоптимизирована. Однако другого компилятора, насколько я знаю, пока не существует, поэтому остается пользоваться этим.

https://github.com/Rikarin/VulkanizeD
Статический биндинг Vulkan для D. Прилагаются 32- и 64-битные библиотеки для компоновки под Windows, совместимые с DMD/Optlink. Для LDC, наверное, можно использовать официальные библиотеки из LunarG SDK.

Документация

https://vulkan-tutorial.com
Коллекция уроков по Vulkan на английском. Очень полезный ресурс для начинающих знакомиться с этим API.

http://www.gamedev.ru/code/articles/VulkanTriangle
Вводная статья по Vulkan на русском. Описывает основные принципы API и включает материал по установке SDK, обработке ошибок, работе с различными сущностями Vulkan и краткий курс по выводу треугольника в качестве практической части.

Комментариев нет:

Отправить комментарий