Vulkan API — урок 43. 3D, еще и движется (+листинг)

Теперь же мы можем поговорить о самом наборе дескрипторов. Для этого добавим функцию createDescriptorSet: void initVulkan() { … createDescriptorPool(); createDescriptorSet(); … } … void createDescriptorSet() { } Далее заполняем нужную для его создания информацию в структуре VkDescriptorSetAllocateInfo. Необходимо указать descriptor pool,… Continue Reading

Vulkan API — урок 42. Descriptor pool

Набор дескрипторов не может быть создан непосредственно, он должны быть выделен из пула, примерно как буферы команд. Эквивалент для наборов дескрипторов называется descriptor pool, что логично. Для его настройки напишем новую функцию createDescriptorPool. void initVulkan() { … createUniformBuffer(); createDescriptorPool(); … }… Continue Reading

Vulkan API — урок 40.

Следующий шаг – определить UBO на стороне С++ и сказать Vulkan’у об этом дескрипторе в vertex shader. struct UniformBufferObject { glm::mat4 model; glm::mat4 view; glm::mat4 proj; }; Мы можем точно соответствовать определению в шейдере используя типы данных в GLM. Данные в матрицах… Continue Reading

Vulkan API — урок 39. Глобальные переменные

В связи с небольшим изменением в самих уроках, до текстур доберемся через 5 уроков, включая этот. Из-за особенностей переводимых разными людьми текстов, перед этим был вынужден переводить handle как дескриптор, как общепринятый вариант, что бы не внести больше путаницы в умы читателей, хотя… Continue Reading