MCPcopy Create free account
hub / github.com/Overv/VulkanTutorial / findQueueFamilies

Method findQueueFamilies

code/30_multisampling.cpp:1658–1688  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1656 }
1657
1658 QueueFamilyIndices findQueueFamilies(VkPhysicalDevice device) {
1659 QueueFamilyIndices indices;
1660
1661 uint32_t queueFamilyCount = 0;
1662 vkGetPhysicalDeviceQueueFamilyProperties(device, &queueFamilyCount, nullptr);
1663
1664 std::vector<VkQueueFamilyProperties> queueFamilies(queueFamilyCount);
1665 vkGetPhysicalDeviceQueueFamilyProperties(device, &queueFamilyCount, queueFamilies.data());
1666
1667 int i = 0;
1668 for (const auto& queueFamily : queueFamilies) {
1669 if (queueFamily.queueFlags & VK_QUEUE_GRAPHICS_BIT) {
1670 indices.graphicsFamily = i;
1671 }
1672
1673 VkBool32 presentSupport = false;
1674 vkGetPhysicalDeviceSurfaceSupportKHR(device, i, surface, &presentSupport);
1675
1676 if (presentSupport) {
1677 indices.presentFamily = i;
1678 }
1679
1680 if (indices.isComplete()) {
1681 break;
1682 }
1683
1684 i++;
1685 }
1686
1687 return indices;
1688 }
1689
1690 std::vector<const char*> getRequiredExtensions() {
1691 uint32_t glfwExtensionCount = 0;

Callers

nothing calls this directly

Calls 1

isCompleteMethod · 0.45

Tested by

no test coverage detected