093 Vulkan API: Адрес буферного устройства часть 1

093 Vulkan API: Адрес буферного устройства часть 1

Видео: 093 Vulkan API: Адрес буферного устройства часть 1

RuTube

Ленинский Букварь

Опубликовано: 19.05.2026 | Продолжительность: 00:51:36

00:03 Введение и требования Приветствие и начало рубрики Обучение CUDA. Необходимость прохождения первого и тринадцатого уроков для запуска кода. Требования к компьютеру: Windows с видеокартой поддерживающей Vulcan. Упоминание о поддержке трассировки лучей для примеров с трассировкой лучей. 01:11 Цель выпуска Обсуждение алгоритма и приложения Buffer.cpp. Демонстрация доступа к ресурсам в памяти графического процессора без использования дескрипторов. 02:43 Старый подход и новый метод Краткое описание старого подхода с использованием дескрипторов. Объяснение нового метода с использованием адреса буфера устройства. 03:34 Описание приложения Два блока расположенные рядом при запуске приложения. Возможность включения анимации блоков. Вращение блоков при включении анимации. 06:08 Традиционный подход с дескрипторами Описание традиционного подхода с использованием пула дескрипторов и набора дескрипторов. Сложность и абстрактность традиционного подхода. 09:07 Преимущества дескрипторного подхода Удобство для отладки и захвата экрана. Безопасность для критически важных приложений. Ограничения метода адреса буферного устройства для сложных задач. Недоступность метода на некоторых мобильных устройствах и старых аппаратных средствах. 14:13 Реализация метода адреса буферного устройства Включение функций буферизации адресов устройств. Копирование данных с центрального процессора в память графического процессора. Отображение буфера между центральным и графическим процессором. 17:09 Работа с блоками Два блока в памяти графического процессора. Первый блок содержит первый набор данных второй второй набор данных. Данные сопоставляются между центральным и графическим процессором. 19:06 Получение указателей графического процессора Использование VK get buffer device address KHR для получения указателей на данные в памяти графического процессора. Важность использования функций с маленькой буквы VK в Vulkan. 20:30 Передача указателей в буфер устройства Передача указателей в виде констант в буфер устройства. Размер каждого адреса 64 бита на 8 байт. 21:37 Отправка пакета в графический процессор Использование VK CMD push constants для отправки пакета в графический процессор. 22:26 Обработка данных в шейдере В шейдере необходимо включить адресацию буферных устройств. Использование GLSL для работы с данными. 25:12 Вычисление переменной GL_Position Вычисление переменной GL_Position с учётом мирового локального и экранного пространств. Переменная GL_Position используется для корректного рендеринга и поворота блоков. 27:02 Различие между данными сцены и модели Шейдер отличает данные сцены от данных модели по порядку передачи информации. Пример с изменением порядка вызовов показывает как это влияет на результаты. 30:58 Флаги для буферов Необходимость использования флагов VK_Buffer_Usage_Shader_Bit и VK_Memory_host_visible_coherent для корректной работы буферов. Эти флаги обеспечивают видимость памяти для процессора и графического процессора. 37:15 Указание шейдера при передаче данных При вызове VK_Cmd_push_constants необходимо указать флаг VK_Shader_Stage_Vertex_Bit для определения шейдера который будет получать данные. В примере используется вершинный шейдер cube.vert. 38:24 Компиляция шейдеров и использование констант Компиляция шейдеров для получения V-инструкций которые выполняет графический процессор. Объявление шейдерного этапа и использование констант CVKCMD push для передачи данных. 39:05 Включение поддержки буферных устройств Необходимость включения поддержки адресации буферных устройств в приложении. Использование флагов буферного устройства и расширения VK KHR buffer device address extension. 40:09 Использование констант push Указание на использование констант push во время создания конвейера. 41:04 Принцип работы карты и обновление данных Карта как дорога для подключения центрального процессора к графическому. Постоянное копирование данных из памяти для обновления данных в графическом процессоре. Обновление проекции модели а не самих вершин. 43:38 Адреса буферных устройств и константы push Адреса буферных устройств обычно не меняются от кадра к кадру. Константы push передают небольшие фрагменты данных с центрального процессора на графический. 46:22 Роль шейдеров в Vulkan Шейдеры GLSL важны для Vulkan но не являются его частью. Инновации в компьютерной графике часто связаны с шейдерными языками. 49:15 Процесс обновления данных Получение указателей на данные в графическом процессоре и упаковка их в структуру Push constants. Отправка пакета данных в графический процессор с помощью VKCMD push constants. Установка флагов для корректной работы буферного устройства. 49:59 Запуск примера на графических процессорах NVIDIA,

#

Категория видео: Обучение

Квиз
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:26:11
задание 9 дополнение
Смотреть
Квиз
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:25:36
Продуктовый магазин
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:24:26
DOOM: код и история
Смотреть
Ленинский Букварь
  2026-05-16 в 22:31:56
Доставка
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:25:06
Первые Декреты новой власти 1917 года
Смотреть
История России и не только...
  2026-05-20 в 14:06:36
#094 Vulkan API: Адрес буферного устройства, часть 2
Смотреть
Квиз
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:28:02
#095 Vulkan API_ Кошмар синхронизации, часть 1
Смотреть
Квиз
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:25:18
Квиз
Смотреть
LEWIS FOREMAN SCHOOL
  2026-05-20 в 14:26:30