OpenGL extension book - Opinions

Has someone here had the chance to look at the new book on OpenGL extensions? If so, I would like to hear opinions about it. If you are comfortable reading the specs in the extension registry is there any reason to buy it?

  • SFRuckus

first i have to say that i don’t own this book - but the only reason not to buy it, would be, IMHO, that the extension stuff is changing too often, these days.

Here are some advantages that [i]The OpenGL Extensions Guide[/i] has over the extension specs.

  • [li] The extension specs are written as modifications to the base OpenGL spec, and not necessarily to the most recent version. This can be confusing, or at very least a pain if you have to look at the OpenGL spec to see the context in which the extension’s text belongs. The OpenGL Extensions Guide discusses each extension in its own context.[] The OpenGL Extensions Guide contains function reference sections for each extension that are very similar to those found in the Blue Book. These sections discuss both new functions defined by an extension and every function modified in any way by the extension.[] The OpenGL Extensions Guide contains information about extensions from multiple vendors in a single place. Try getting Nvidia and ATI to cooperate enough to produce such a document. [*] The OpenGL Extensions Guide contains numerous real-world examples that surpass what you’ll find in the extension specs.

Also, I was very careful to cover extensions that are likely not to be obsolete in the near future. Extensions don’t change – the worst thing that can happen is that a new extension supersedes an old one, but the old one will still work. Even though this book is extremely up-to-date, there will most probably be a second volume in a year or so that will cover any new extensions that crop up before that time.

If you decide to buy this book, please go through the following link:

http://www.terathon.com/books/extensions.html

By doing so, you will be supporting future writing projects by your humble author, me. I strive to create books of the highest possible quality, but it takes a lot of time and unfortunately doesn’t pay very well. The tiny commission that Amazon pays for each book purchased through the above link is actually larger than what the publisher pays me. Without this extra boost, it’s unlikely that I’ll be able to keep writing for too much longer, so if you want to continue seeing high-quality titles from me, please help out by clicking through my website. Thanks.

– Eric Lengyel

[This message has been edited by Eric Lengyel (edited 07-21-2003).]

@Eric…:

first i thought, when reading your comment, that “you must be one of the authors of this book, your post sound like a commercial or advertisement” laugh then, by going onto the website, i saw that you are actually the author :-))

Ok,
what i wanted to say was only, that the number of extension is increasing very fast, and that that might be a reason, why not to buy it.

but, you said:
>>numerous real-world examples that surpass
>>what you’ll find in the extension specs.

is there any needful sourcecode in this book, some examples ? or is it only a “extension overview”; that might be a really interesting question.
you said “realworld example”, now i guess that there are some demo-programs inside there, which don’t only use the extensions but showing, how to use them ??

In the extension list covered by the book (the one that appear in the provided link) it doesn’t appear ARB_vertex_buffer_object.

Is it possible that it is not covered in the book?
If so, the array management chapter is obsolete.

Hardly unsurprising, since the book probably went to the printers at least a month (if not 2-3) ago.

And it’s not obsolete; those extensions are still avaliable and still work. The chapter in question simply lacks the latest extension.

[This message has been edited by Korval (edited 07-22-2003).]

is there any needful sourcecode in this book, some examples ? or is it only a “extension overview”; that might be a really interesting question.
you said “realworld example”, now i guess that there are some demo-programs inside there, which don’t only use the extensions but showing, how to use them ??

Yes, the book discusses how to use certain extensions to achieve specific results. For example, there are sections that describe how to use GL_NV_texture_shader to perform EMBM, or arbitrary-exponent specular shading with an NHHH texture. You’ll also see how to use GL_EXT_stencil_two_side or GL_ATI_separate_stencil to speed up shadow volume rendering, and how to use GL_NV_depth_bounds_test to restrict lighting to the particular range of depths that a light affects.

The book is not full of source code like some other books out there, but it does attempt to convey enough understanding so that the reader should have no trouble writing his own code.

In the extension list covered by the book (the one that appear in the provided link) it doesn’t appear ARB_vertex_buffer_object.

Is it possible that it is not covered in the book?
If so, the array management chapter is obsolete.

You’re right – the book does not cover the GL_ARB_vertex_buffer_object extension (the contents on terathon.com are accurate). The manuscript had to be finished several months ago (February) to meet production schedules, and that was around the time that the spec was approved by the ARB, so I couldn’t quite squeeze it in. (Not to mention that drivers didn’t support it yet.) You can bet your life that it will be covered in the second volume. I wouldn’t say that the vertex_array_range extensions are completely obsolete, but I do agree that they are deprecated and much less important now.