Вы используете память за delete
:
if (enableValidationLayers) {
std::vector<const char*> layers;
createInfo.ppEnabledLayerNames = layers.data();
}
vkCreateInstance(&createInfo, nullptr, &m_Instance)
Кроме того, ваше createInfo.flags
является неинициализированным значением, которое недопустимо. На каждый c должно быть 0
. Установленная практика при использовании C привязок Vulkan в C ++ заключается в предварительной инициализации структуры следующим образом:
VkInstanceCreateInfo createInfo = {};