#028 Vulkan API gears.cpp 1 prepareVertices()
00:00 Введение в серию обсуждений Vulkan API • Приветствие и начало новой серии обсуждений Vulkan API. • Представление алгоритма Gears, созданного Сашей Уильямсом. • Упоминание о лицензии и свободном доступе кода на GitHub. 00:51 Требования для участия • Необходимость приобретения учебников №1 и №13 для работы с кодом. • Урок №1: установка Vulkan API на компьютер с Windows и поддерживающим Vulkan графическим процессором. • Урок №13: установка примеров Саши Уильямса через Visual Studio IDE. 02:18 Демонстрация алгоритма Gears • Запуск алгоритма Gears и демонстрация трёх шестерёнок разных цветов. • Объяснение работы алгоритма и его особенностей. 03:57 Подготовка кода • Начало разбора кода с раздела «подготовка». • Упоминание инкапсуляции и базового кода. • Призыв к практическому запуску кода для обучения. 06:02 Функция «подготовленные вершины» • Объяснение работы функции «подготовленные вершины». • Подготовка переменных и векторов. • Важность понимания работы переменных на стороне процессора. 07:49 Изменение количества шестерёнок • Изменение количества шестерёнок с трёх на одну или две. • Объяснение, почему изменение количества не приводит к сбою кода. 08:48 Информация о шестерёнках • Объявление информации о шестерёнках: радиус, ширина, количество зубьев, цвет. • Примеры данных для каждой шестерёнки. 10:27 Свойства шестерёнок • Различия в радиусах и направлениях вращения шестерёнок. • Возможность изменения значений для тестирования алгоритма. 12:03 Завершение и дополнительные ресурсы • Подчёркивание важности подготовки данных для Vulkan. • Упоминание обязательных описаний привязок и атрибутов. • Ссылка на видеоролик о описаниях привязок и атрибутов. 13:45 Объяснение важности объявлений данных • Без объявлений данных Vulkan API получает пустую флешку без информации о последовательности и типе данных. • Необходимо указать, что первые четыре блока данных относятся к вершинам, а вторые четыре — к экземплярам. • Описания атрибутов помогают определить тип данных. 14:44 Роль привязок и описаний атрибутов • Привязки определяют, сколько данных занимает каждый блок. • Важно учитывать привязку и описания атрибутов для корректной работы с данными. • Рекомендуется ознакомиться с обсуждением на доске по ссылке в описании. 15:42 Подготовка графического конвейера • Необходимо подготовить графический конвейер и сообщить ему о наличии данных. • Передача данных в Vulkan API означает их перенос на GPU и включение в графический конвейер. 16:54 Описание привязок вершин • Привязка может быть основана на вершинах или экземплярах. • В данном случае привязка основана на вершинах. • Указывается идентификатор привязки и размер вершины. 18:05 Детализация привязок • В других алгоритмах может быть несколько привязок, например, для информации о вершинах и экземплярах. • Обсуждаются описания атрибутов, расположения памяти и шейдеров. 18:44 Описание входного атрибута вершины • Вспомогательная функция описывает привязку входного атрибута вершины. • Тип данных — плавающий формат «вконтакте». • Размер данных зависит от размера числа с плавающей запятой, умноженного на три. 20:34 Описание атрибутов цвета • Заполняются описания атрибутов цвета. • Размер данных умножается на шесть. 22:48 Создание входного состояния вершин • Инициализируется конвейер для создания информации о состоянии ввода вершин. • Указывается количество описаний привязки вершин и их размер. • Данные для привязок помещаются в входное состояние вершин. 25:15 Определение вершин • Вершины включают состояние ввода, описание привязки и описания атрибутов. • VkPipelineVertexInputState создаёт информацию о состоянии вершин. 28:02 Обзор процесса • Начинается с функции prepared vertices. • Определяются переменные и перебираются шестерёнки для заполнения данными. 28:19 Привязка данных к Vulkan • Связывание данных с Vulkan для передачи информации о вершинах. • Атрибуты могут быть трёх видов: расположение памяти, расположение шейдеров, распределение данных по фрагментам. • Перенос данных в переменную vertices с её входным состоянием. 29:16 Рекомендации по изучению Vulkan • Для начала изучения Vulkan рекомендуется использовать учебники 1 и 13. • Убедитесь, что компьютер работает под управлением Windows и имеет графический процессор с поддержкой Vulkan. • Проверьте совместимость графического процессора с Vulkan самостоятельно. 30:05 Призыв к взаимодействию • Призыв ставить лайки, подписываться и делиться видео. • Возможность создания собственных видеоигр и экспериментов с переменными. • Примеры изменений: позиции, скорость вращения, радиус зубчатых колёс, количество зубчатых колёс. 30:52 Завершение • Важность описания атрибутов и привязки данных к Vulkan. • Необходимость объявления входного состояния для работы с конвейером. • Благодарность за просмотр и прощание.
00:00 Введение в серию обсуждений Vulkan API • Приветствие и начало новой серии обсуждений Vulkan API. • Представление алгоритма Gears, созданного Сашей Уильямсом. • Упоминание о лицензии и свободном доступе кода на GitHub. 00:51 Требования для участия • Необходимость приобретения учебников №1 и №13 для работы с кодом. • Урок №1: установка Vulkan API на компьютер с Windows и поддерживающим Vulkan графическим процессором. • Урок №13: установка примеров Саши Уильямса через Visual Studio IDE. 02:18 Демонстрация алгоритма Gears • Запуск алгоритма Gears и демонстрация трёх шестерёнок разных цветов. • Объяснение работы алгоритма и его особенностей. 03:57 Подготовка кода • Начало разбора кода с раздела «подготовка». • Упоминание инкапсуляции и базового кода. • Призыв к практическому запуску кода для обучения. 06:02 Функция «подготовленные вершины» • Объяснение работы функции «подготовленные вершины». • Подготовка переменных и векторов. • Важность понимания работы переменных на стороне процессора. 07:49 Изменение количества шестерёнок • Изменение количества шестерёнок с трёх на одну или две. • Объяснение, почему изменение количества не приводит к сбою кода. 08:48 Информация о шестерёнках • Объявление информации о шестерёнках: радиус, ширина, количество зубьев, цвет. • Примеры данных для каждой шестерёнки. 10:27 Свойства шестерёнок • Различия в радиусах и направлениях вращения шестерёнок. • Возможность изменения значений для тестирования алгоритма. 12:03 Завершение и дополнительные ресурсы • Подчёркивание важности подготовки данных для Vulkan. • Упоминание обязательных описаний привязок и атрибутов. • Ссылка на видеоролик о описаниях привязок и атрибутов. 13:45 Объяснение важности объявлений данных • Без объявлений данных Vulkan API получает пустую флешку без информации о последовательности и типе данных. • Необходимо указать, что первые четыре блока данных относятся к вершинам, а вторые четыре — к экземплярам. • Описания атрибутов помогают определить тип данных. 14:44 Роль привязок и описаний атрибутов • Привязки определяют, сколько данных занимает каждый блок. • Важно учитывать привязку и описания атрибутов для корректной работы с данными. • Рекомендуется ознакомиться с обсуждением на доске по ссылке в описании. 15:42 Подготовка графического конвейера • Необходимо подготовить графический конвейер и сообщить ему о наличии данных. • Передача данных в Vulkan API означает их перенос на GPU и включение в графический конвейер. 16:54 Описание привязок вершин • Привязка может быть основана на вершинах или экземплярах. • В данном случае привязка основана на вершинах. • Указывается идентификатор привязки и размер вершины. 18:05 Детализация привязок • В других алгоритмах может быть несколько привязок, например, для информации о вершинах и экземплярах. • Обсуждаются описания атрибутов, расположения памяти и шейдеров. 18:44 Описание входного атрибута вершины • Вспомогательная функция описывает привязку входного атрибута вершины. • Тип данных — плавающий формат «вконтакте». • Размер данных зависит от размера числа с плавающей запятой, умноженного на три. 20:34 Описание атрибутов цвета • Заполняются описания атрибутов цвета. • Размер данных умножается на шесть. 22:48 Создание входного состояния вершин • Инициализируется конвейер для создания информации о состоянии ввода вершин. • Указывается количество описаний привязки вершин и их размер. • Данные для привязок помещаются в входное состояние вершин. 25:15 Определение вершин • Вершины включают состояние ввода, описание привязки и описания атрибутов. • VkPipelineVertexInputState создаёт информацию о состоянии вершин. 28:02 Обзор процесса • Начинается с функции prepared vertices. • Определяются переменные и перебираются шестерёнки для заполнения данными. 28:19 Привязка данных к Vulkan • Связывание данных с Vulkan для передачи информации о вершинах. • Атрибуты могут быть трёх видов: расположение памяти, расположение шейдеров, распределение данных по фрагментам. • Перенос данных в переменную vertices с её входным состоянием. 29:16 Рекомендации по изучению Vulkan • Для начала изучения Vulkan рекомендуется использовать учебники 1 и 13. • Убедитесь, что компьютер работает под управлением Windows и имеет графический процессор с поддержкой Vulkan. • Проверьте совместимость графического процессора с Vulkan самостоятельно. 30:05 Призыв к взаимодействию • Призыв ставить лайки, подписываться и делиться видео. • Возможность создания собственных видеоигр и экспериментов с переменными. • Примеры изменений: позиции, скорость вращения, радиус зубчатых колёс, количество зубчатых колёс. 30:52 Завершение • Важность описания атрибутов и привязки данных к Vulkan. • Необходимость объявления входного состояния для работы с конвейером. • Благодарность за просмотр и прощание.
