Paperback: 440 pages
Publisher: O'Reilly Media; 1 edition (May 24, 2010)
Language: English
ISBN-10: 0596804822
ISBN-13: 978-9350230336
Product Dimensions: 7 x 1 x 9.2 inches
Shipping Weight: 1.6 pounds (View shipping rates and policies)
Average Customer Review: 3.8 out of 5 stars See all reviews (21 customer reviews)
Best Sellers Rank: #786,769 in Books (See Top 100 in Books) #28 in Books > Computers & Technology > Programming > Graphics & Multimedia > OpenGL #134 in Books > Computers & Technology > Programming > Apple Programming #149 in Books > Computers & Technology > Mobile Phones, Tablets & E-Readers > iPhone
The title 'iPhone 3D Programming' is misleading. This book is focused on cross-platform development in C++, which is cool but makes the title of the book incidental and mostly a marketing gimmick. Yes, you're using Xcode and running your apps on iOS devices, but the real goal is cross-platform development using OpenGL ES via a set of C++ classes.It feels like the author basically had this work lying around and ported it to the iPhone, then wrote chapters to share with us.Nowhere are the core frameworks reused or integrated with OpenGL in interesting or creative ways, and a lot of useful frameworks are tossed to the wayside in favor of wrapper C++ classes. It shows the author's inexperience with the platform.The actual OpenGL meat is tasty here, but the iPhone integration is pointless and very novice.
This book has the best description on how to get a project going on the iPhone that I have read so far. No nonsense straight and to the point to get you started and then gets you up to speed quickly with OpenGL ES. I wish I had this when I started making iPhone apps.I like how the author's design takes advantage of portability using a C++ engine. This allows for a project to be ported to other platforms fairly easily. The example projects support all current forms of the iPhone (OpenGL 1.1 and 2.0) and I also have the demo projects working quite easily on the iPad by following the directions stated but with an iPad project instead of an iPhone project.If you are looking to create a game or interactive application on the iPhone or the iPad, this is the book you want.
I bought the book thinking it would help me jump start in OpenGL. It certainly does but not in the way I was expecting. Each new example in the book starts by removing all the generated resources that Xcode creates for you when you choose an OpenGL ES project! As a developer with over 20 years of Objective-C behind my belt, this is highly counter-intuitive. I want to write OpenGL apps on the iPhone, not write a portable renderer in C++. I'm not planning to port any app to any other platform anytime soon. So, in addition of learning OpenGL, I now have to become closely familiar with C++, which I don't have any desire to do. One step at a time, please!So, if you're planning to write an OpenGL app that you want to port to multiple platforms, already know C++ quite a bit, and optionally want to have your app working on the iPhone, that book is for you. Otherwise, do like me and look somewhere else.
This book is exactly what I was looking for. I needed a book that explained the exact opengl es 2.0 api that is used in iOS. This book's examples are in C++, which is perfect because I plan to use mostly c++ in my iOS app's logic and graphics code. Objective-C programmers will probably be scared off by the use of C++ and STL in this book, but they shouldn't be. If you're writing games or any kind of cpu intensive program, C++ is a better choice than objective-C.The only negative about this book is that it is now a few years old and therefore the text talks about an older version of xcode.
This is the first book I bought on iPhone/iPad 3D graphics programming. The author did excellent job on presenting modern OpenGL ES programming in a clear way. The book contains lots of examples using both OpenGL ES 1.1 and 2.0 APIs. The first six chapters are very detailed in explaining the code. The last three chapters are faster paced but still contain good explanation on important portions of the code. I like the presentation of code that lists application side, shader side and how they are tied together. The author also explains very well how you would want to organize your code through interfaces. I run most of the examples on the iPhone emulator and they all worked! The reader should have a good understanding of C++ programming language in order to get most out of this book. Also, this is not a general iPhone programming book but rather a 3D programming book on iPhone/iPad.The book could have broken some of the later chapters into multiple chapters, so a reader will not feel too overwhelmed by sheer amount of material."A good graphics programmer thinks like a politician and uses lies to her advantage." - A quote from the book.
This book is a FANTASTIC launching point for any IOS development whether you are using 3D or not.The book assumes no (zero, zip, zilch) knowledge about objective C and explains everything clearly and concisely [I just love concise]. If you already know Objective C, you can skim, if you no nothing or have forgotten something (like I am constantly doing) the book's approach is great. Experts might complain that it spends time on basics, but I never see that as a valid complaint. I'm an expert and I can tell you that the more you review the basics, the better you'll become.The book does cover BOTH OpenGLES 1.1 and 2.0, which they should advertise, because... well... that's kind of hugely important. I almost didn't buy this book because I assumed it only covered 1.1 . (hint-hint )Another great thing about this book is that the author uses a design methodology where you use C++ heavily to allow for modularity and portability. This also means you get to program a bit in a sane programming language. (Ok that was a little crack at objective C, but lets face it, there is a huge reader base that isn't so crazy about Objective C [me among them])The approach of the book is basically a walkthrough to develop a working application. It carefully guides you through the innumerable gotchas, booby-traps and land-mines that Apple lays before you. Most importantly, the cognitive effort required to understand the material is minimal because the book takes an applied as opposed to pedantic approach. I'm not sure about your brain cells, but my brain cells aren't so keen about having to absorb all the finer points of iOS allocation/retention protocols just to accomplish the simplest task. Fortunately this book just gets right to the point.Summary: I can't say enough good things about this book.
iPhone 7: The Ultimate Apple iPhone 7 User Manual - Discover Amazing Hacks To Master Your iPhone 7 Now! (iPhone 7 Phone Case, iPhone 7 User Guide, iPhone 7 Manual) A Beginner's Guide to iPhone 6 and iPhone 6 Plus: (Or iPhone 4s, iPhone 5, iPhone 5c, iPhone 5s with iOS 8) iPhone 3D Programming: Developing Graphical Applications with OpenGL ES iPhone 7: For Beginners - Learn How To Use Iphone 7 Plus Advanced Tips And Tricks (iPhone 7 Phone Case, iPhone 7 User Guide, iPhone 7 Manual) iPhone 6: Apple iPhone 6 User Guide - Learn How To Use iPhone 6, iPhone 6s & iPhone 6s Plus, With Advanced Tips! (Apple, IOS, Yosemite) iPhone 6: Apple iPhone 6 Beginners Guide - Learn How To Use And Get The Most Out Of Your iPhone 6 & iPhone 6S (Apple, IOS, iPhone 6/6s/6 Plus) iPhone Portable Genius: Covers iOS 8 on iPhone 6, iPhone 6 Plus, iPhone 5s, and iPhone 5c iPhone 6: The Complete iPhone 6 Beginners Guide - Learn How To Use Your iPhone 6, Detailed User Manual, Plus New iPhone 6 & iPhone 6s Hidden Features, Tips And Tricks! (Apple, IOS, Yosemite) iPhone 6: The Ultimate User Guide With Exclusive Tips And Tricks To Master iPhone 6 And iPhone 6 Plus (Iphone 6, IOS 9, Apple) The iPhone Book: Covers iPhone 5, iPhone 4S, and iPhone 4 (6th Edition) Programming #8:C Programming Success in a Day & Android Programming In a Day! (C Programming, C++programming, C++ programming language, Android , Android Programming, Android Games) Programming #57: C++ Programming Professional Made Easy & Android Programming in a Day (C++ Programming, C++ Language, C++for beginners, C++, Programming ... Programming, Android, C, C Programming) Teach Yourself VISUALLY iPhone 6s: Covers iOS9 and all models of iPhone 6s, 6, and iPhone 5 (Teach Yourself VISUALLY (Tech)) iPhone 6s Guide: The Ultimate Guide for iPhone 6s & iPhone 6s Plus Help Me! Guide to iPhone 6: Step-by-Step User Guide for the iPhone 6 and iPhone 6 Plus iPhone 6 Guide: For iPhone 6 and iPhone 6 Plus iPhone 6: The Comprehensive User Guide To Master Iphone 6, 6 S And 6 S Plus! Includes Advanced Tips and Tricks! (Iphone 6, IOS 9, Apple) IPhone SE: The Ultimate User Guide With Exclusive Tips And Tricks To Master Your IPhone SE (Apple, IOS, iPhone SE) Iphone 6 S and 6 S Plus: Practical User Guide with Exclusive Tips and Tricks to Master Iphone 6 S (Iphone 6, IOS 9, Apple) iPhone 6: Practical User Guide To Master Iphone 6, 6 S And 6 S Plus! Includes Little-Known Tips and Tricks (Iphone 6, IOS 9, Apple)