#058 Vulkan API: Трассировка лучей 7.3: Генерация лучей - Попадание - rayPayloadEXT

00:00 Введение • Приветствие зрителей и начало программы CUDA Education. • Продолжение изучения API Vulkan и шейдеров. 00:30 Компиляция шейдеров • Объяснение процесса компиляции шейдера regenargen. • Использование Python для компиляции файла spv. • Упоминание о запатентованном языке драйверов Sparse V. 01:23 Запуск программы • Запуск программы и шейдеров для компиляции. • Необходимость запуска скрипта без отладки. 02:21 Шейдеры и генерация лучей • Обзор различных шейдеров: regen, miss, hit. • Фокус на понимании генерации лучей. 03:21 Параметры t-min и t-max • Объяснение параметров t-min и t-max. • Объяснение, почему не используется абсолютный ноль для учёта пересечений. 05:14 Сфера камеры • Камера определяет сферу для съёмки. • Равноудаленность в трёхмерном моделировании. 06:39 Значение попадания • Значение попадания как запись количества попаданий. • Роль ray payload ex в записи данных о пересечениях. 10:17 Инициализация и хранилище изображений • Инициализация значения попадания равным нулю. • Использование хранилища изображений для записи данных. 14:00 Запуск сценария • Запуск сценария и увеличение масштаба. • Обновление значения попадания при попадании луча в геометрию. 15:00 Заключение • Подведение итогов и демонстрация работы сценария. • Призыв к дальнейшему изучению и пониманию процесса. 15:24 Введение в переменную «значение попадания» • Обсуждение переменной «значение попадания», которая инициализируется нулями и обновляется при прохождении луча через сцену. • Планирование инициализации новой переменной «hit value cuda education». 16:25 Компиляция внешнего шейдера • Объяснение, что внешний шейдер компилируется отдельно от базового скрипта трассировки лучей. • Упоминание возможных ошибок при компиляции и их последствий. 17:21 Анализ ошибок компиляции • Описание ошибки, связанной с отсутствием точки входа на этапе генерации лучей. • Попытка исправления ошибки путём перемещения кода в другое место. 19:06 Эксперименты с переменной «hit value» • Изменение значения переменной с «hit value» на «hit value cuda education» и попытка запуска скрипта. • Необходимость перекомпиляции файла после изменений. 20:08 Проблемы с инициализацией • Объяснение, почему скрипт не запускается из-за отсутствия инициализации переменной. • Вставка нулей в программу для инициализации. 22:40 Результаты экспериментов • Отсутствие отображения модели неба и других элементов на экране. • Объяснение, что переменная «hit value» используется в других шейдерах и скриптах. 24:08 Анализ функции сохранения изображений • Функция сохранения изображений записывает значение попадания в «cuda education», но оно никогда не обновляется. • Влияние этого на отображение элементов на экране. 26:45 Заключение и выводы • Подведение итогов: понимание роли переменной «hit value». • Возвращение треугольника после перекомпиляции. • Объяснение работы функции «полезная нагрузка луча» и обновления переменной «hit value». 28:29 Приглашение к дальнейшему изучению • Приглашение ознакомиться с первым и тринадцатым уроками по Vulcan. • Предложение приобрести всю серию «Вулкана». 29:10 Требования к оборудованию • Компьютер под управлением Windows с графическим процессором, поддерживающим «Вулкан». • Для трассировки лучей на NVIDIA требуется RTX и выше. • Автор не знает о поддержке AMD и Intel. 30:01 Планы на будущее • В следующем видео планируется работа с другими шейдерами для анализа влияния на значения попаданий. • Упоминание о важности ray payload ex как части головоломки. • Полезная нагрузка от ray обновляется другими шейдерами. 30:01 Установка SDK и примеров • В первом уроке устанавливается Vulkan SDK. • В тринадцатом уроке устанавливаются примеры и решения.

Иконка канала Ленинский Букварь
244 подписчика
12+
4 просмотра
8 часов назад
12+
4 просмотра
8 часов назад

00:00 Введение • Приветствие зрителей и начало программы CUDA Education. • Продолжение изучения API Vulkan и шейдеров. 00:30 Компиляция шейдеров • Объяснение процесса компиляции шейдера regenargen. • Использование Python для компиляции файла spv. • Упоминание о запатентованном языке драйверов Sparse V. 01:23 Запуск программы • Запуск программы и шейдеров для компиляции. • Необходимость запуска скрипта без отладки. 02:21 Шейдеры и генерация лучей • Обзор различных шейдеров: regen, miss, hit. • Фокус на понимании генерации лучей. 03:21 Параметры t-min и t-max • Объяснение параметров t-min и t-max. • Объяснение, почему не используется абсолютный ноль для учёта пересечений. 05:14 Сфера камеры • Камера определяет сферу для съёмки. • Равноудаленность в трёхмерном моделировании. 06:39 Значение попадания • Значение попадания как запись количества попаданий. • Роль ray payload ex в записи данных о пересечениях. 10:17 Инициализация и хранилище изображений • Инициализация значения попадания равным нулю. • Использование хранилища изображений для записи данных. 14:00 Запуск сценария • Запуск сценария и увеличение масштаба. • Обновление значения попадания при попадании луча в геометрию. 15:00 Заключение • Подведение итогов и демонстрация работы сценария. • Призыв к дальнейшему изучению и пониманию процесса. 15:24 Введение в переменную «значение попадания» • Обсуждение переменной «значение попадания», которая инициализируется нулями и обновляется при прохождении луча через сцену. • Планирование инициализации новой переменной «hit value cuda education». 16:25 Компиляция внешнего шейдера • Объяснение, что внешний шейдер компилируется отдельно от базового скрипта трассировки лучей. • Упоминание возможных ошибок при компиляции и их последствий. 17:21 Анализ ошибок компиляции • Описание ошибки, связанной с отсутствием точки входа на этапе генерации лучей. • Попытка исправления ошибки путём перемещения кода в другое место. 19:06 Эксперименты с переменной «hit value» • Изменение значения переменной с «hit value» на «hit value cuda education» и попытка запуска скрипта. • Необходимость перекомпиляции файла после изменений. 20:08 Проблемы с инициализацией • Объяснение, почему скрипт не запускается из-за отсутствия инициализации переменной. • Вставка нулей в программу для инициализации. 22:40 Результаты экспериментов • Отсутствие отображения модели неба и других элементов на экране. • Объяснение, что переменная «hit value» используется в других шейдерах и скриптах. 24:08 Анализ функции сохранения изображений • Функция сохранения изображений записывает значение попадания в «cuda education», но оно никогда не обновляется. • Влияние этого на отображение элементов на экране. 26:45 Заключение и выводы • Подведение итогов: понимание роли переменной «hit value». • Возвращение треугольника после перекомпиляции. • Объяснение работы функции «полезная нагрузка луча» и обновления переменной «hit value». 28:29 Приглашение к дальнейшему изучению • Приглашение ознакомиться с первым и тринадцатым уроками по Vulcan. • Предложение приобрести всю серию «Вулкана». 29:10 Требования к оборудованию • Компьютер под управлением Windows с графическим процессором, поддерживающим «Вулкан». • Для трассировки лучей на NVIDIA требуется RTX и выше. • Автор не знает о поддержке AMD и Intel. 30:01 Планы на будущее • В следующем видео планируется работа с другими шейдерами для анализа влияния на значения попаданий. • Упоминание о важности ray payload ex как части головоломки. • Полезная нагрузка от ray обновляется другими шейдерами. 30:01 Установка SDK и примеров • В первом уроке устанавливается Vulkan SDK. • В тринадцатом уроке устанавливаются примеры и решения.

, чтобы оставлять комментарии