Articles » 3D Graphics via OpenGL » Learning How to Program in OpenGL (Book Recommendations)

Learning How to Program in OpenGL (Book Recommendations)

Programming in OpenGL has a steep initial learning curve, particularly for those with little experience in computer graphics or 3D mathematics. Whilst this website contains (expanding) learning material for OpenGL, this is best augmented with additional material (e.g., books). There are, however, a plethora of books available on the topic and knowing which books to purchase can be tricky. Thus, this page lists the books that I think will be most useful to both newcomers, and experienced OpenGL programmers. Links to online shops that sell these items are provided. It is recommended that you use the store closest to your location in the world.

OpenGL Programming Guide: The Official Guide To Learning Opengl, Version 2.1

Opengl Programming Guide: The Official Guide To Learning Opengl, Version 2.1The first book on my recommended list is the official OpenGL Programming Guide, also known as "The OpenGL Red Book." It is an indispensable reference to the complete OpenGL specification (up to version 2.1). As such, it is not he best book to learn OpenGL programming from scratch; however, even the most experienced programmers will need to look up how particular parts of the specification work from time to time. If someone were on a limited budget and could only afford to buy one book, this book would be the most useful, regardless of whether that person were a newcomer or an experienced OpenGL programmer (who would probably already have a copy).

 Available online globally from the following stores:
 New Zealand
Buy from thenile.co.nz
 AustraliaBuy from thenile.com.au
 United States of America
Buy from amazon.com
 CanadaBuy from amazon.ca
 United Kingdom
Buy from amazon.co.uk
 FranceAcheter chez amazon.fr
 DeutschlandKaufen bei amazon.de

OpenGL(R) Shading Language (2nd Edition)

OpenGL(R) Shading Language (2nd Edition)

Modern graphics cards contain Graphics Processing Units (GPUs) which are highly reprogrammable. This allows complex and highly realistic graphics effects to be rendered efficiently on the graphics card. I have personally used the GPU in order to offload computationally intensive computer vision processing from the CPU (see the about page). This programmability and powerful processing engine is used via shaders, and the OpenGL Shading Language (GLSL). Also known as "The Yellow Book," this book details how shaders and the shading language are used. Like the red book, this book is an indispensable reference for anyone who wishes to use shaders.

 Available online globally from the following stores:
 New Zealand
Buy from thenile.co.nz
 AustraliaBuy from thenile.com.au
 United States of America
Buy from amazon.com
 CanadaBuy from amazon.ca
 United Kingdom
Buy from amazon.co.uk
 FranceAchetez chez amazon.fr
 DeutschlandKaufen bei amazon.de

The OpenGL Library (Boxed Set)

The OpenGL LibraryThe two books listed above are also available at significant discount as a boxed set. Seeing as these two books are complimentary and both books are essential for using the full OpenGL specification, buying these two as a set is highly recommended.

 Available online globally from the following stores:
 New Zealand
Buy from thenile.co.nz
 AustraliaBuy from thenile.com.au
 United States of America
Buy from amazon.com
 CanadaBuy from amazon.ca
 United Kingdom
Buy from amazon.co.uk
 FranceAchetez chez amazon.fr
 DeutschlandKaufen bei amazon.de

 

OpenGL(R) SuperBible: Comprehensive Tutorial and Reference (4th Edition)

OpenGL(R) SuperBible: Comprehensive Tutorial and Reference (4th Edition)The two books listed above are reference books. Recommending a book for learning OpenGL is difficult since people's learning styles are different. This is made even harder because I personally struggled through with just the reference books and various online tutorials. Nevertheless, the OpenGL SuperBible is a book that I can recommend as a learning tool. for beginners. It covers all the major topics of computer graphics and provides exemple source-code. This book was written by members of the OpenGL Architecture Review Board, the board that decides on future changes to the OpenGL specification. It contains information about OpenGL on multiple platforms as well as a chapter on OpenGL ES, the OpenGL variant for embedded systems and handheld devices.

 Available online globally from the following stores:
 New Zealand
Buy from thenile.co.nz
 AustraliaBuy from thenile.com.au
 United States of America
Buy from amazon.com
 CanadaBuy from amazon.ca
 United Kingdom
Buy from amazon.co.uk
 FranceAchetez chez amazon.fr
 DeutschlandKaufen bei amazon.de

 

Interactive Computer Graphics: A Top-Down Approach Using OpenGL (5th Edition)

Interactive Computer Graphics: A Top-Down Approach Using OpenGLThose who prefer a more hands-on approach may prefer this book over the OpenGL SuperBible. "Interactive Computer Graphics: A Top-Down Approach Using OpenGL" leaves some of the more complex details and underlying concepts for later, starting instead with getting readers writing programs that display 3D graphics. Whilst some may find this approach lacking in structure, it may be better for those who tend to experiment first, and get into greater depth later. Its author, Edward Angel, is a Professor of Computer Science and is, thus, familiar with the needs of students learning graphics concepts.

 Available online globally from the following stores:
 New Zealand
Buy from thenile.co.nz
 AustraliaBuy from thenile.com.au
 United States of America
Buy from amazon.com
 CanadaBuy from amazon.ca
 United Kingdom
Buy from amazon.co.uk
 FranceAchetez chez amazon.fr
 DeutschlandKaufen bei amazon.de

 

Final Comments

This concludes my list of recommended books for learning OpenGL. There may well be other good books available that are not listed above, so people may wish to have a look at other titles that are available. The ones listed, however, are books that I consider to be worth reading or having as a reference.





Articles » 3D Graphics via OpenGL » Learning How to Program in OpenGL (Book Recommendations)