Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Mathematics for Game Programming and Computer Graphics

You're reading from   Mathematics for Game Programming and Computer Graphics Explore the essential mathematics for creating, rendering, and manipulating 3D virtual environments

Arrow left icon
Product type Paperback
Published in Nov 2022
Publisher Packt
ISBN-13 9781801077330
Length 444 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Penny de Byl Penny de Byl
Author Profile Icon Penny de Byl
Penny de Byl
Arrow right icon
View More author details
Toc

Table of Contents (26) Chapters Close

Preface 1. Part 1 – Essential Tools
2. Chapter 1: Hello Graphics Window: You’re On Your Way FREE CHAPTER 3. Chapter 2: Let’s Start Drawing 4. Chapter 3: Line Plotting Pixel by Pixel 5. Chapter 4: Graphics and Game Engine Components 6. Chapter 5: Let’s Light It Up! 7. Chapter 6: Updating and Drawing the Graphics Environment 8. Chapter 7: Interactions with the Keyboard and Mouse for Dynamic Graphics Programs 9. Part 2 – Essential Trigonometry
10. Chapter 8: Reviewing Our Knowledge of Triangles 11. Chapter 9: Practicing Vector Essentials 12. Chapter 10: Getting Acquainted with Lines, Rays, and Normals 13. Chapter 11: Manipulating the Light and Texture of Triangles 14. Part 3 – Essential Transformations
15. Chapter 12: Mastering Affine Transformations 16. Chapter 13: Understanding the Importance of Matrices 17. Chapter 14: Working with Coordinate Spaces 18. Chapter 15: Navigating the View Space 19. Chapter 16: Rotating with Quaternions 20. Part 4 – Essential Rendering Techniques
21. Chapter 17: Vertex and Fragment Shading 22. Chapter 18: Customizing the Render Pipeline 23. Chapter 19: Rendering Visual Realism Like a Pro 24. Index 25. Other Books You May Enjoy

Preface

Mathematics is an essential skill when it comes to graphics and game development, particularly if you want to understand the generation of real-time computer graphics and the manipulation of objects and environments in more detail. Python, together with Pygame and PyOpenGL, provides the opportunity for today’s developers to explore these features under the hood, revealing how computers generate and manipulate 3D environments.

Mathematics for Game Programming and Computer Graphics is a comprehensive guide to getting “back to the basics” of mathematics, using a series of problem-based, practical exercises to explore ideas around drawing graphic lines and shapes, applying vectors and vertices, constructing and rendering meshes, working with vertex shaders, and implementing physics techniques such as collisions and particle emitters. Using Python, Pygame, and PyOpenGL, you will create your own mathematical-based engine and API that will be used throughout to build applications and examples.

By the end of this book, you will have a thorough understanding of how essential mathematics is to creating, rendering, and manipulating 3D virtual environments and know the secrets behind today’s top graphics and game engines.

When Packt first approached me to write this book, I had just released a course on computer graphics using Python and OpenGL in Udemy and on H3DLearn.com. The timing was never better than to review what I had learned in the course and write it up in a book focused on the mathematics involved.

Mathematics is one of those topics you either love, loathe, or have a quiet appreciation for. I was in the loathe camp for most of my university studies. I found it irritating and a time-consuming function I needed to get done to continue with my love of programming. Then, in my honors (fourth year), I was introduced to computer graphics and fractals. It was like a veil had been lifted for me and mathematics became magical, fascinating, and most importantly, visual. Being able to see the beauty in mathematics changed everything. I’m still not a lover of mathematics, but I’ve definitely gone from the loathe stage to quiet appreciation. Though I guess writing a book about it takes me from just appreciating it to love. You can’t program any computer games or graphics without knowing the mathematics driving it all.

My goal in writing this book is to bring you into the “quiet appreciation” category. If you get to the “love” category, then great! I do believe that we all have different talents. Mathematics is not mine. I do find it quite challenging, but I have persevered and, over my career, learned to understand its origin and application. I am in no way one of those people who can multiply tens of numbers in my head, but I don’t need to be. The point is that if you learn when and where to apply the mathematics, and then transform that into a programming algorithm, and you can validate and be confident of the output, then it doesn’t matter whether you can calculate the output in your head or need time to work it out.

There’s just so much mathematics to cover in this area that I could have honestly written another several hundred pages. However, it’s my hope that the content herein will fire you up and give you the confidence and critical skills to independently further your education.

lock icon The rest of the chapter is locked
Next Section arrow right
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime