OpenGL SuperBible: Comprehensive Tutorial and Reference (Anglais) Broché – 21 juillet 2013
|Neuf à partir de||Occasion à partir de|
Il y a une édition plus récente de cet article:
Produits fréquemment achetés ensemble
Les clients ayant acheté cet article ont également acheté
Descriptions du produit
Biographie de l'auteur
Graham Sellers is a senior manager and software architect on the OpenGL driver team at AMD. He represents AMD at the ARB and has contributed to many extensions and to the core OpenGL Specification. He holds several patents in the fields of computer graphics and image processing.
Richard S. Wright, Jr., senior software engineer for Software Bisque, develops multimedia astronomy and planetarium software using OpenGL. He has written many OpenGL-based games, scientific/medical applications, database visualization tools, and educational programs. He has taught OpenGL programming at Full Sail University’s game design degree program for over a decade.
Nicholas Haemel, senior manager of Tegra OpenGL driver development at NVIDIA, leads a development team working on NVIDIA mobile graphics drivers, represents NVIDIA at the Khronos Group standards body, has authored many OpenGL extensions, and contributed to all OpenGL specifications since version 3.0.
Aucun appareil Kindle n'est requis. Téléchargez l'une des applis Kindle gratuites et commencez à lire les livres Kindle sur votre smartphone, tablette ou ordinateur.
Pour obtenir l'appli gratuite, saisissez votre adresse e-mail ou numéro de téléphone mobile.
Détails sur le produit
En savoir plus sur les auteursDécouvrez des livres, informez-vous sur les écrivains, lisez des blogs d'auteurs et bien plus encore.
Dans ce livre(En savoir plus)
Quels sont les autres articles que les clients achètent après avoir regardé cet article?
Commentaires en ligne
Meilleurs commentaires des clients
I'd appreciate that for next editions, we have examples and tutorials using Python.
Commentaires client les plus utiles sur Amazon.com (beta)
Be prepared for a lot of emphasis on shader programming. Face up to it: It’s the nature of the modern beast. If you’re not ready for that, one suggestion is to start with an earlier edition – one that focuses on earlier versions of OpenGL, and then grow to love it.
Having gone through many (aborigines are said to have a ternary number system: 1, 2, many) editions of the Superbible, I find it necessary to keep a copy of a corresponding Redbook (OpenGL Programming Guide) edition handy. In that sense, I find the Superbible to be an essential learning aid. But …
It was indeed unfortunate to find that the current authors and publisher continued to follow the habits of previous authors and publishers of walking away from what I view as their responsibility to their readership:
1. Others have complained about the quality of the black and white illustrations. They were correct: the printing of screenshots is terrible. The majority of the current authors are experienced authors. (a) They should have avoided the problem. (b) The editor should have caught the problem before going to press. (c) The printer should have called attention to the problem before committing to a run.
2. There is no consistent way of tying a screenshot or a code listing to a project name in the source code provided as a download on the book’s web site. I made it a point to deduce, by one means or another, the project name from the text or code if the project name was not explicitly mentioned (which was the usual case). The authors could have provided an index in the download’s README file.
3. In the Preface, an author states, “We made a bunch of mistakes – we’re certain of it. … If you think you see something that doesn’t quite gel, check the book’s Web site for errata.” I’m writing this review in June 2014, almost a year after publication of the book. There are no errata on the web site. Moreover, there is no mechanism for submitting errata.
4. The code I downloaded (dated November 2013) built on Visual Studio 2010 successfully. All but a few projects executed without error. I found the distribution for VS 2010 available on GitHub to be useless: Apparently the last person to build it built it with VS 2013. I considered submitting an issue, but got discouraged when I saw that the last commits were made seven or eight months ago.
5. The book’s Appendix C describes two tools, ktxtool and dds2ktx, which it says is available in the source code. Not so.
6. I searched for but could not find an OpenGL Superbible forum. The best I could find was the general OpenGL forum. The last blog entry on the book’s web site is dated February 2014. Apparently the authors have better things to do.
In scoring a rating for this edition of the OpenGL Superbible, I started with five stars. After all, I consider it and the Redbook to be essential components to learning OpenGL. Then, because of the lousy illustrations and the authors’ neglect, I backed off two stars. A one-star deduction would not have been enough.
It occurs to me that all of the problems enumerated above could be resolved on the book’s web site. I would be glad to improve my rating if the authors (or even someone else) would step up to addressing them.
If the book were titled the SB6 Library superbible, It would have been ok but after reading the claims at the beginning of the book stating that this book is meant to go over the OpenGL library without jumping back and fourth I couldn't help but wonder why the authors chose to include their own library which defeats that purpose to some extent.
Granted the library simplifies things but that's not the purpose of a book. Since the target audience is already familiar with C++, there's no need to wrap the main() function for example, which I find unnecessary. This may be fine for the author but we all have different styles of coding and it's not the author's place to force a framework in order to explain how the OpenGL pipeline works.
This is a book about OpenGL and the code should run out of the box with dependencies to OpenGL, GLUT and GLFW being acceptable. If the authors chose to develop a wrapper library, the library should be part of the text as an illustration to how things are put together. Also what would be more acceptable is if the sb6 library's cpp source code was available to view instead of distributing a black box which may confuse the reader.
Also when adding shader code, the authors fail to mention the appropriate code updates to the rendering functions which can be a bit inconvenient. Also failure to delete compiled shaders in one of the examples shoud be avoided.
The OpenGL pipeline is getting more and more complex and I can see the appeal in simplifying it by making it more accessible but writing a book about a library and forcing a black box framework is unacceptable. This book does explain things well I must admit but for experienced C++ and OpenGL users, I recommend the Red Book for a more thorough read and detailed reference.
The clear introduction to the pipeline and the lucid and well-explained code examples have gotten me going far faster than I would have expected. After reading Part I of the book I'm familiar enough with the basics that I'm already working on my project in earnest and reading the rest of the book either as reference and as I have time. The writing continues to be clear and the figures are really clear on the Kindle, both on phone and tablet. The code samples can be a little difficult on a narrow screen, but that's just the nature of reading code on a phone.
I think anyone entering the OpenGL world should be warned that it (OpenGL) is a bit of a mess, especially if you're trying to target multiple platforms and be reasonably backwards compatible. This book is about a particular version of OpenGL and, as it's not intended as a history lesson, doesn't do a tremendous amount to be clear about the differences between versions. It'll take some independent work on the reader's part to come to understand which version of GL suites their purposes best and then a bit more work to understand what parts of the book don't apply to that version. Having said that, I am targeting OpenGL 3.2/GLSL 1.50 and have had no trouble applying my new understanding and only a couple hiccups using the bits of the code I've copied.
On that note, I tend to write my samples from scratch when learning a technology so I end up copy-pasting pieces of the samples and not just using them whole hog. Given this style, the code download works well. I haven't tried to build the samples.
Overall, complaints about difficultly with the code samples on certain platforms and difficulties with color figures in a black and white book (which is acknowledged by the author) seem pretty insignificant when compared with the clarity of the writing, the organization of the content, and the availability of a code download. Highly recommended.
The first three chapters are very good with showing examples and making something happen. Very tutorial based for complete noobs. Chapters 4 through 6 deal with a lot of concepts and background things, but were mostly necessary to cover. I personally believe that Chapter 5 should have come later in the book because it deals with atomic operations and memory barriers. The equivalent chapter in the Programming Guide 8th edition covered this in Chapter 11.
I haven't read chapter 7 yet, but it looks like things are about to get interesting. Will further this review once more content is read.
Having the example code is a great help.