126 std::vector<float> priorities = {1.0f};
128 std::vector<vk::DeviceQueueCreateInfo> queueCreateInfo;
131 for (uint32_t i : uniqueIndices) {
132 queueCreateInfo.emplace_back(vk::DeviceQueueCreateFlags(), i, 1, priorities.data());
136 vk::PhysicalDeviceFeatures features;
140 std::vector<const char*> extensions = getExtensions<vk::ExtensionProperties>(
145 return std::string(p.extensionName);
149 vk::DeviceCreateInfo createInfo(vk::DeviceCreateFlags(),
static_cast<uint32_t
>(queueCreateInfo.size()), queueCreateInfo.data(),
150 0,
nullptr,
static_cast<uint32_t
>(extensions.size()), extensions.data(), &features);
192 std::vector<vk::PhysicalDevice> devices =
Core::instance->enumeratePhysicalDevices();
193 devices.erase(std::remove_if(devices.begin(), devices.end(), [](
const vk::PhysicalDevice& device) {
194 return !Device::deviceSupported(device);