Mathematics and Graphics Concepts
Before we begin rendering objects , it is essential that you are familiar with the math that will be used for the projects in later chapters. Mathematics plays a crucial role in games development, and graphics programming generally uses vectors and matrices extensively. In this chapter, you will see where these math concepts come in handy. We'll first go over some key mathematical concepts, and then apply them to working with space transformations and a render pipeline. There are dedicated books which cover all the math related topics required for game development. Since we will be covering Graphics Programming with C++, other mathematics topics are out of the scope of this book.
In the following chapters we will be using OpenGL or Vulkan graphics APIs for rendering our objects and will use the GLM math library for doing the maths. In this chapter we will explore the process of creating a 3D object in a virtual world using matrix and vector transforms. Then we will look at how we transform a 3D point into a 2D location using space transforms, and how the graphics pipeline helps us to achieve this.
We will cover the following topics:
- Learn basics about the 3D coordinate system.
- The basics of vector and matrix math and transforms
- Getting familiar with GLM C++ Math Library
- How to implement Space transformations in 3D graphics
- Understanding the flow of Graphics pipeline