The graphics pipeline defines the pipeline an object should follow when it is drawn. As we discovered in Chapter 2, Mathematics and Graphics Concepts, there is a series of steps that we need to follow to draw an object:
In OpenGL, pipeline states can be changed at any time, just like we enabled and disabled blending when drawing text in Chapter 8, Enhancing Your Game with Collision, Loop, and Lighting. However, changing states takes up a lot of system resources, which is why Vulkan discourages you from changing states at will. Therefore, you will have to set the pipeline states in advance for each object. Before you create a pipeline's state, you also need to create a pipeline layout that takes the descriptor set layout we created in the previous chapter. So, we will create the pipeline layout first.
Then, we also need to provide the...