Which OpenGL book to pick?

Started by
5 comments, last by Aliii 10 years, 5 months ago

Hi there,

I am not new to programming but I am a complete newbie to OpenGL. I played around with XNA for a couple of years now and decided to learn opengl. So I got a copy of the superbible 5th edition. The first 4 chapters were ok. But now there are things which I really don't like.

1. They use their own libraries and .h-files. And I have the impression of only scratching on the surface all the time.

2. The Shader-chapter got me completely confused not least because of the custom Libs and .h

So is there any OpenGL books you could recommend where one can learn it from scratch? I read about "Beginning Opengl Game Programming" would you recommend this?

Greets.

Advertisement

The best book I could recommend by looking at all current books is The OpenGL Superbible 6th edition.

The authors decided to get rid of their wrapper library and instead show you raw OpenGL. They do have a set of headers to use that handles setting up GLUT and has a few mathematical things in there to make your life easier but this stuff is not hiding OpenGL in anyway.

The only downfall of this edition is the fact that it is OpenGL 4.3 so you need a video card capable of 4.3 or at least from what I can see 4.0 - 4.3. The author does claim most of the examples should work with 3.3 but there will be a bunch that do not.

This is a tutorial book if you combine this with the newest OpenGL red book (More of a reference then anything) you will be set and on your way.

Edit:

Forgot to mention if you are looking to get into the basics without a book the best way to go is with this tutorial....

http://www.arcsynthesis.org/gltut/

I began graphics programming with the book you mention, "Beginning OpenGL Game Programming", and I found it an excellent start to the subject. That being said, the first edition of the book which I used was purely fixed-pipeline which would be somewhat pointless to learn nowadays as you would have to relearn everything to use shaders anyway. I notice the book is now in its second edition, so maybe they have updated things to incorporate shaders. Its something to be aware of, at any rate.

Either this one

OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition)

http://www.amazon.com/OpenGL-Programming-Guide-Official-Learning/dp/0321773039/ref=sr_1_1?ie=UTF8&qid=1382723216&sr=8-1&keywords=openGL

or this one

OpenGL SuperBible: Comprehensive Tutorial and Reference (6th Edition)

http://www.amazon.com/OpenGL-SuperBible-Comprehensive-Tutorial-Reference/dp/0321902947/ref=sr_1_2?ie=UTF8&qid=1382723315&sr=8-2&keywords=openGL

both were released this year. I own the first, it's ok, I really wish they would teach it different like a from scratch tutorial.

If this post or signature was helpful and/or constructive please give rep.

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

// Easy to learn 2D Game Library c++

SFML2.2 Download http://www.sfml-dev.org/download.php

SFML2.2 Tutorials http://www.sfml-dev.org/tutorials/2.2/

// Excellent 2d physics library Box2D

http://box2d.org/about/

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20


complete newbie to OpenGL

...

recommend where one can learn it from scratch?

...

I have the impression of only scratching on the surface all the time.

Unfortunately you are asking for contradictory things.

A beginner book needs to educate you on the beginner topics. This means teaching you the basics of the pipeline, the basics of what a model is, what a texture is. The basics of what is involved in manipulating models, how to work with transformations, and how to work with the fundamentals.

This is what you NEED in a beginner book. A good beginner book will walk you through the beginning steps, and if you apply yourself to your studies, you might graduate from the book as an advanced beginner or intermediate skill level.

A good beginner book absolutely should only scratch the surface. Most of the high performance graphics techniques are complex and nuanced --- the opposite of what you want in a beginner book. You can start out with a beginner book, and that is a good thing. Beginners start at a beginning level. Then they move to an intermediate level, and on to an advanced level, and finally grow to become experts.

When you were learning to read you probably started with the equivalent of "See Spot Run" beginning books, eventually moving on to chapter books, and only after years of practice did you evolve to complex reading material. When you were learning mathematics you started with addition and subtraction, moved on to multiplication and division and fractions, slowly growing and learning trig and algebra and other skills. You don't start a beginner with expert material.

Glancing over at my shelf right now, I see copies of the beginner books (the Red Book, The OpenGL SuperBible) but also about ten other books like GPU Gems series, Graphics Gems series, and also three 3" binders full of advanced printed material.

If you choose this as your field it will not be your only book. Do your best to master the content in the book, and then move on to more advanced material. Eventually you will be able to grow to advanced-level and expert-level techniques, but right now recognize you are still a beginner. And that is okay.

If you are using c++ which I guess you are since you are using openGL, I would suggest using SFML2 to make some 2D games. SFML2 is a object oriented library that wraps around openGL and openAL, also has networking.

Using this will teach you very good programming habits related to Object Oriented Programming, while getting to draw stuff on the screen rather easily.

Then you will see what a good graphics library is designed like and could one day when you reach the skill level write your own if you wish.

http://www.amazon.com/gp/product/1849696845/ref=s9_simh_gw_p14_d0_i1?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=center-2&pf_rd_r=1DNBH38BXHG1MARNGVB2&pf_rd_t=101&pf_rd_p=1630072222&pf_rd_i=507846

If this post or signature was helpful and/or constructive please give rep.

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

// Easy to learn 2D Game Library c++

SFML2.2 Download http://www.sfml-dev.org/download.php

SFML2.2 Tutorials http://www.sfml-dev.org/tutorials/2.2/

// Excellent 2d physics library Box2D

http://box2d.org/about/

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

I also recommend these tutorials: http://ogldev.atspace.co.uk/index.html

Good spoonfeeding:)

This topic is closed to new replies.

Advertisement