Function inexor::vulkan_renderer::tools::pick_best_physical_device(std::vector<DeviceInfo>&&, const VkPhysicalDeviceFeatures&, const std::span<const char *>)

Function Documentation

VkPhysicalDevice inexor::vulkan_renderer::tools::pick_best_physical_device(std::vector<DeviceInfo> &&physical_device_infos, const VkPhysicalDeviceFeatures &required_features, const std::span<const char*> required_extensions)

Pick the best physical device automatically

Parameters:
  • physical_device_infos – The data of the physical devices

  • required_features – The required device features

  • required_extensions – The required device extensions

Throws:
  • std::runtime_error – There are no physical devices are available at all

  • std::runtime_error – No suitable physical device could be determined

Returns:

The chosen physical device which is most suitable