Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

While I agree it's dated in lot of ways but it is still a great read. I am not a game dev but I love to write performant code, it's just a personal satisfaction when I know my code is making the best use of the hardware.

I think you should read the first chapter at least, on how he approaches code optimization, first by design and then by code.

This book teaches you to think like a performance programmer like no other. In the first chapter he challenges assumptions, for example how lib C code is not really optimally written (its written for portability and general purposes) and you can easily write more efficient algorithm to do the same.

The mindset of not being at mercy of the library is a powerful one, it inspires you to dig deeper and find out how things really work. Thus, you make the best choices for the problem in hand.



Yep, I'm sure there are still great nuggets in the book. Unfortunately it looks like I'm not going to get my question answered about modern OpenGL books because everyone just jumps in and says that you should still read Abrash's book.

John Carmack, for example, didn't write much of his games in assembler because he knew that he didn't have to. If you look at Doom, there wasn't a lot of assembler even back in the early 1990's.

https://github.com/id-Software/DOOM

And according to Carmack, he liked working in C and OpenGL.

http://rmitz.org/carmack.on.opengl.html

"With OpenGL, you can get something working with simple, straightforward code, then if it is warranted, you can convert to display lists or vertex arrays for max performance (although the difference usually isn't that large). This is the right way of doing things -- like converting your crucial functions to assembly language after doing all your development in C."

I actually have done some basic assembler so I do understatnd the benefits of keeping values in registers, etc. A lot of stuff really is architecture dependent, of course. ARM vs x86 will make a difference.

Anyway, where's the best place to start these days? Personally, I'd like to do some iOS stuff, and perhaps keep the same code running on Android.


This isn't what you asked, but as a professional mobile game dev I can tell you that even c++ & opengl is too low level for what you need for most mobile games today, on android and ios.

There are a lot of options such as unity, haxe/openfl, adobe air, etc. Most of these are very easy to pick up by just reading one of the many online tutorials.


I imagine you have already read the "red book" (Open GL Programming Guide) that pops on every search for "good OpenGL book" and are not satisfied?

Then I'd advice either reading a general rendering book or some GPU docs depending on your finding the book too easy or too hard.


You're recommending a book that gets 2.5 stars on Amazon?

http://www.amazon.com/OpenGL-Programming-Guide-Official-Lear...

When I googled it, the red book was not recommended. OpenGL 3.x has many changes that aren't covered?

http://www.gamedev.net/topic/601531-best-book-to-teach-openg...

[Update] Here are three good references that I extracted:

http://nopper.tv/norbert/opengl.html

http://www.amazon.com/Beginning-OpenGL-Programming-Second-Ed... -- Mixed reviews

http://www.amazon.com/OpenGL-SuperBible-Comprehensive-Tutori...


Red book is following the current version. I believe they had 3.x edition for a while. Anyways, why you'd care about 3.x if you are targeting iPhone/Android?


Well, iOS 7 does support OpenGL 3.0 ES. If I'm starting now, why wouldn't I want to target it? By the time, I'm done with my first app, iOS 7 will be on over 80% of the iOS devices.

I checked and Android 4.3 supports 3.0. KitKat's low memory support should mean that even new cheaper phones will get Android 4.4 in the near future.


OpenGL 3.0 and OpengGL ES 3.0 are different APIs, with later based on a subset of OpenGL 2.x as same as OpenGL ES 2.0.

OpenGL 3.x seems like a dead end IMHO. I only follow the Kronos group antics as a spectator, so I might be completely wrong but it seems the 4.x is trying to clean the mess of 3.0 and not building over it. It could also be the reason the 3.x redbook did not get enough Amazon stars for your satisfaction.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: