In this chapter, we will cover the following recipes:
- Downloading Vulkan SDK
- Enabling validation layers
- Connecting with a Vulkan Loader library
- Preparing for loading Vulkan API functions
- Loading function exported from a Vulkan Loader library
- Loading global-level functions
- Checking available Instance extensions
- Creating a Vulkan Instance
- Loading instance-level functions
- Enumerating available physical devices
- Checking available device extensions
- Getting features and properties of a physical device
- Checking available queue families and their properties
- Selecting the index of a queue family with the desired capabilities
- Creating a logical device
- Loading device-level functions
- Getting a device queue
- Creating a logical device with geometry shaders and graphics and compute queues
- Destroying a logical device
- Destroying a Vulkan Instance
- Releasing a Vulkan Loader library