There are plenty of tutorials out there that teach how to program graphics cards to generate imagery. However, simply following tutorials alone will only get you so far.
Understanding how a Graphics Processing Unit (GPU) works and the theory they’re built on will make you a more effective graphics programmer. Think about it for a moment, if you understood how a machine works, what it can do and why, would you be better at using that machine? Absolutely!
This e-book will give you this extra knowledge. Once you understand how the GPU works you’ll be able to think creatively instead of blindly following tutorials. You’ll think of better ways to achieve the results you want, and possibly even come up with new techniques.
The ebook doesn’t try to cover everything in full detail. Instead, it covers the core fundamentals you need to get started:
- How the overall graphics pipeline works
- What shaders are, and how they’re used
- The various types of data buffers (vertices, textures, etc.)
- How 3D objects and cameras are positioned in 3D space using matrix algebra
- Basic 3D lighting – the Phong lighting model
- Performance tips
- A cheat-sheet for common tasks using OpenGL ES 3, SDL2, and GLM
- A list of useful resources
This e-book comes with a companion “Getting Started with OpenGL ES 3+ Programming” tutorial series. The tutorials cover the practical “how-to” side; taking you from zero to rendering a basic 3D scene with lighting.
What Others Are Saying
One word; Superb!
Good introduction to 3D development
It gives the reader a good overview of the basics, enough to get started.
Good: Example code makes it easy to get started
A crucial good thing is the tutorials w/example code that compiles (those you provided on your keasigmadelta webpage).
This gives the reader good opportunities to succeed.
Other authors often forget this, leaving the reader «in the dark» by struggling with quirks, and ends up by giving up.
Having example code available is an excellent way of teaching. It’s easy to get started this way.
Good: Balanced detail level & informative
It has a good combination of programming details & explanations.
Good: Chapter about texture mapping
Easy understandable & informative illustration, combined with good explanations.
Good: Chapter about Performance optimizing
Optimization is important to me, and getting this information in this book is crucial for me.
This means the readers can obtain healthy programming habits from the beginning.
— Jostein Aarbakk
About the Author
Hans de Ruiter is a software engineer with a background in computer vision and graphics. As a child/teenager he taught himself programming, constructed electronic circuits from kitsets, and also had a keen interest both science and in building things himself. He persued these interests further at university, going all the way through to a Ph.D. (at the University of Toronto).
He’s written both graphics software and graphics drivers, giving him a broad understanding of how modern graphics cards work.