Learning OpenGL ES for iOS: A Hands-on Guide to Modern 3D Graphics Programming
Product Author Bios
Erik M. Buck is a serial entrepreneur and author. He co-wrote Cocoa Programming in 2003 and Cocoa Design Patterns in 2009. He founded his first company, EMB & Associates, Inc., in 1993 and built the company into a leader in the aerospace and entertainment software industries. Mr. Buck has also worked in construction, taught science to 8th graders, exhibited oil on canvas portraits, and developed alternative fuel vehicles. Mr. Buck sold his company in 2002 and took the opportunity to pursue other interests, including his latest startup, cosmicthump.com. Mr. Buck is an Adjunct Professor of Computer Science at Wright State University and teaches iOS programming courses. He received a BS in Computer Science from the University of Dayton in 1991.
Get Started Fast with Modern OpenGL ES Graphics Programming for iPhone, iPod touch, and iPad
OpenGL ES technology underlies the user interface and graphical capabilities of Apple’s iPhone, iPod touch, and iPad–as well as devices ranging from video-game consoles and aircraft-cockpit displays to non-Apple smartphones. In this friendly, thorough introduction, Erik M. Buck shows how to make the most of Open GL ES in Apple’s iOS environment.
This highly anticipated title focuses on modern, efficient approaches that use the newest versions of OpenGL ES, helping you avoid the irrelevant, obsolete, and misleading techniques that litter the Internet. Buck embraces Objective-C and Cocoa Touch, showing how to leverage Apple’s powerful, elegant GLKit framework to maximize your productivity, achieve tight platform integration, and deliver exceptionally polished apps.
If you’ve written C or C++ code and know object-oriented programming basics, this title brings together everything you need to fully master OpenGL ES graphics for iOS–including downloadable examples specifically designed to jumpstart your own projects.
• Understanding core OpenGL ES computer graphics concepts and iOS graphics architecture
• Integrating Cocoa Touch with OpenGL ES to leverage the power of Apple’s platform
• Creating textures from start to finish: opacity, blending, multi-texturing, and compression
• Simulating ambient, diffuse, and specular light
• Using transformations to render 3D geometric objects from any point of view
• Animating scenes by controlling time through application logic
• Partitioning data to draw expansive outdoor scenes with rolling terrain
• Detecting and handling user interaction with 3D geometry
• Implementing special effects ranging from skyboxes to particles and billboards
• Systematically optimizing graphics performance
• Understanding the essential linear algebra concepts used in computer graphics
• Designing and constructing a complete simulation that incorporates everything you’ve learned
Source code for Learning OpenGL ES for iOS can be found here:
13 of 13 people found the following review helpful
The only up to date IOS guide to 3d programming,
This review is from: Learning OpenGL ES for iOS: A Hands-on Guide to Modern 3D Graphics Programming (Paperback)This is the only up to date book on iOS OpenGL ES2.0 I'm aware of, and I practically own every single textbook on the subject.
All other competing texts fail to treat GLKit and most modern additions to iOS programming libraries and unlike this book don't use ARC based code.
As the author states, this book does not contain obsolete code and gently guides the reader towards practical use of Open GL on iOS5.
It includes a Math Cheat sheet wich I strongly suggest beginners start reading before everything else, in order to make things easier.
This is not a math book and subject treatment is just a gentle introduction, this may not be enough for more advanced purposes.
This book is a very complete introduction to OpenGL ES2.0 and is very specific to iOS development.
It touches advanced topics as mesh importing, optimization, and skinning, but it is not nor aims at being complete and thorough treatment of advanced 3d graphics programming. It just places a... Read more
6 of 6 people found the following review helpful
This review is from: Learning OpenGL ES for iOS: A Hands-on Guide to Modern 3D Graphics Programming (Paperback)I was interested in this book mainly for expanding my iOS app development. I have a good amount of experience on OpenGL for desktops but haven't had the time to explore the OpenGL ES world.
As stated in the other reviews this does contain a good amount of dependences with GLKit which means you'll be programming for iOS 5+, if that isn't a problem then keep reading.
Throughout the book the author does a great job on commenting his code. He tells you exactly what each method does and what it returns. I found this very helpful while going through the book. His explanations and examples are easy to follow and provides a summary at the end of each chapter.
When a new GLKit method is used in most cases the method is explained in a "Deep Dive" section. For example "Deep Dive: How does GLKTextureLoading Work". I liked that it goes into detail for some of these methods instead of the reader interpreting that i'll just accept the magic behind what it does... Read more
6 of 6 people found the following review helpful
Better than expected - For iOS 5 and up,
Amazon Verified Purchase(What's this?)
This review is from: Learning OpenGL ES for iOS: A Hands-on Guide to Modern 3D Graphics Programming (Paperback)Yes, the book does rely on GLKit, so if you are targeting a version of iOS before 5.0, keep looking. Maybe the clue is the use of the word "Modern" in the title. It should also be noted that this is not a beginner's book. You will need to be familiar with iOS development.
I disagree with the reviews saying that the examples are too basic. In my opinion, they are broken down into small enough pieces to digest and then build upon. I like the examples, as most OpenGL books are not focused on iOS like this one. Sure there are a few OpenGL books that are for iOS, but this is the best book I've seen that covers OpenGL for iOS and my bookshelf is full of far less useful books. It will definitely help my project gain some momentum.
› See all 16 customer reviews...
Online Sample Chapter
Table of Contents
1 Using Modern Mobile Graphics Hardware 1
What Is 3D Rendering? 2
Supplying the Graphics Processor with Data 4
The OpenGL ES Context 9
The Geometry of a 3D Scene 9
2 Making the Hardware Work for You 19
Drawing a Core Animation Layer with OpenGL ES 19
Combining Cocoa Touch with OpenGL ES 22
The OpenGLES_Ch2_1 Example 27
Deep Dive: How Does GLKView Work? 42
Extrapolating from GLKit 51
3 Textures 59
What Is a Texture? 59
The OpenGLES_Ch3_1 Example 65
Deep Dive: How Does GLKTextureLoader Work? 69
The OpenGLES_Ch3_3 Example 76
Opacity, Blending, and Multi-Texturing 77
Texture Compression 84
4 Shedding Some Light 87
Ambient, Diffuse, and Specular Light 88
Calculating How Much Light Hits Each Triangle 90
Using GLKit Lighting 95
The OpenGLES_Ch4_1 Example 97
Bake Lighting into Textures 104
Fragment Operations 105
5 Changing Your Point of View 107
The Depth Render Buffer 107
The OpenGLES_Ch5_1 and OpenGLES_Ch5_2 Examples 109
Deep Dive: Adding a Depth Buffer Without GLKKit 115
Transformation Cookbook 129
Perspective and the Viewing Frustum 130
6 Animation 133
Motion Within a Scene: The OpenGLES_Ch6_1 Example 134
Animating Vertex Data 140
Animating Colors and Lights: The OpenGLES_Ch6_3 Example 148
Animating Textures 153
7 Loading and Using Models 159
Modeling Tools and Formats 160
Reading modelplist Files 165
The OpenGLES_Ch7_1 Example 168
Advanced Models 172
8 Special Effects 183
Deep Dive: How Does GLKSkyboxEffect Work? 186
9 Optimization 217
Render as Little as Possible 218
Don’t Guess: Profile 232
Minimize Buffer Copying 234
Minimize State Changes 235
10 Terrain and Picking 237
Terrain Implementation 237
Adding Models 249
OpenGL ES Camera 253
11 Math Cheat Sheet 277
Decoding a Matrix 279
Surviving Graphics Math 297
12 Putting It All Together 303
Everything All the Time 306
Device Motion 323
Book + eBook Bundle
Book Price $35.99
eBook Price $12.60
eBook formats included
This book includes free shipping!
This book includes free shipping!
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.