In previous chapters, we have learned about the various aspects of the Vulkan API. We now know how to use the graphics library and how to create applications that render 3D images and perform mathematical calculations. But the sole knowledge about the Vulkan API may not be enough to generate more complicated scenes and to implement various rendering algorithms. There are several very useful operations that can aid us in creating, manipulating, and displaying 3D objects.
In this chapter, we will learn how to prepare transformation matrices that are used to move, rotate, and scale 3D meshes. We will also see how to generate projection matrices. Finally, we will use simple yet very powerful single-header libraries to load images and 3D models stored in files.