Продолжаю тестировать. Пока работает Внимание! Во вложении версия приложения со слоем валидации (дебаггером), который не везде запускается Но эти...
У меня точно такой же лог выдавало приложение на второй машине (это ноутбук 2023 года без дискретной видеокарты), на которой не был установлен...
Последний штрих Падение рамочного приложения Vulkan при изменении размеров окна - это не баг, а фича. Неслучайно в Мануале (там, где используется...
Шаг последний (а за ним будет ещё год отладки) Получена первая графика от Вулкана! После ровно десяти предупреждений об ошибках Вулкан рисует...
Шаг Graphics Pipeline Сегодня бухаем идём в филармонию. Загрузка откомпилированных шейдеров в память не прокатила, поэтому пришлось написать...
Шаг createPipelineLayout Вообще комментировать нечего. Близнец предыдущего createRenderPass Также создаём структуру, проверяем размеры и...
Шаг i-й (я уже сбился) – Swapchain Ничего нового. Всё по той же схеме: первый прогон – получаем количество элементов; выделяем память под...
Шаг 5 – Выбор семейств очередей (Queue families) Та же схема: первый прогон функции считает доступные семейства, второй - подгружает. После...
...А когда сделал свой логгер, понял, что штатный мессенджер Vulkan мне больше не нужен. Почему? Потому что он добавляет лишний слой...
Итак, я запутался, психанул и написал логгер. И подключил его как вывод к мессенджеру. Теперь лог здорового человека выглядит так: Лог...
Это классический механизм снятия противоречия по Гегелю. То же самое можно сказать и про архитектуру Intel/AMD. И всё же для меня OpenGL...
Нет, это следующий этап распухания видеоподсистемы. Под DOS'ом всё считалось в ALU, максимум - в x87, т.н. Software Rendering. Старый добрый int...
glfw3.dll – это библиотека GLFW. Для новой сборки (сегодняшней, на голом API) библиотека GLFW не нужна. vkDestroyInstance находится в библиотеке...
Там две сборки: рабочая и тестовая. И ни одна так себя вести не должна. 1. Рабочая сборка должна открываться, работать и закрываться нормально,...
Осмыслил. Отрефлексировал. Учёл вопросы коллег. Прокладка в виде GLFW не соответствует идее низкоуровневости. Убрал. Теперь не нужны костыли в...
Пытливый читатель может задать вопрос: "А зачем нужен буфер combinedExtensions dq 32 dup(0)"? И зачем вообще всё вот это переписывание: cmp...
Итак, шаг 3 готов на 120% Реализовано не только сравнение срок: [SPOILER] но и дамп слоёв, что очень полезно и чего нет в оригинале: [SPOILER]...
Это в полной комплектации. На минималках там такие же принципы: контекст, конвейер и шейдеры. А вообще, что-то мне подсказывает, что со временем...
Соглашусь: mov rax,-1 выглядит топорно. Но тут масштаб задачи такой, что это простительно. Собранность и аккуратность здесь в другом проявляются....
Курим исключительно мануалы. Автор мануала Alexander Overvoorde придерживается общей идеологии Kronos и LunarG, в которой реализованы как OpenGL,...
Имена участников (разделяйте запятой).