iPhone 3D Programming: Developing Graphical Applications with OpenGL ES [NOOK Book]

Overview

What does it take to build an iPhone app with stunning 3D graphics? This book will show you how to apply OpenGL graphics programming techniques to any device running the iPhone OS -- including the iPad and iPod Touch -- with no iPhone development or 3D graphics experience required. iPhone 3D Programming provides clear step-by-step instructions, as well as lots of practical advice, for using the iPhone SDK and OpenGL.

You'll build several graphics programs -- progressing from ...

See more details below
iPhone 3D Programming: Developing Graphical Applications with OpenGL ES

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
$17.99
BN.com price
(Save 43%)$31.99 List Price

Overview

What does it take to build an iPhone app with stunning 3D graphics? This book will show you how to apply OpenGL graphics programming techniques to any device running the iPhone OS -- including the iPad and iPod Touch -- with no iPhone development or 3D graphics experience required. iPhone 3D Programming provides clear step-by-step instructions, as well as lots of practical advice, for using the iPhone SDK and OpenGL.

You'll build several graphics programs -- progressing from simple to more complex examples -- that focus on lighting, textures, blending, augmented reality, optimization for performance and speed, and much more. All you need to get started is a solid understanding of C++ and a great idea for an app.

  • Learn fundamental graphics concepts, including transformation matrices, quaternions, and more
  • Get set up for iPhone development with the Xcode environment
  • Become familiar with versions 1.1 and 2.0 of the OpenGL ES API, and learn to use vertex buffer objects, lighting, texturing, and shaders
  • Use the iPhone's touch screen, compass, and accelerometer to build interactivity into graphics applications
  • Build iPhone graphics applications such as a 3D wireframe viewer, a simple augmented reality application, a spring system simulation, and more

This book received valuable community input through O'Reilly's Open Feedback Publishing System (OFPS). Learn more at http://labs.oreilly.com/ofps.html.

Read More Show Less

Product Details

  • ISBN-13: 9781449390624
  • Publisher: O'Reilly Media, Incorporated
  • Publication date: 5/3/2010
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 1
  • Pages: 440
  • File size: 7 MB

Meet the Author

Philip Rideout has been a fanatic of real-time graphics programming for over a decade. He has held positions at several pioneering graphics companies, including Intergraph, 3Dlabs, and NVIDIA. Philip currently works at Medical Simulation Corporation in Denver, where he develops new ways to visualize the inside of the human body.

Read More Show Less

Table of Contents

Foreword;
Preface;
How to Read This Book;
Conventions Used in This Book;
Using Code Examples;
Safari® Books Online;
How to Contact Us;
Acknowledgments;
Chapter 1: Quick-Start Guide;
1.1 Transitioning to Apple Technology;
1.2 A Brief History of OpenGL ES;
1.3 Choosing the Appropriate Version of OpenGL ES;
1.4 Getting Started;
1.5 HelloArrow with Fixed Function;
1.6 HelloArrow with Shaders;
1.7 Wrapping Up;
Chapter 2: Math and Metaphors;
2.1 The Assembly Line Metaphor;
2.2 Assembling Primitives from Vertices;
2.3 Associating Properties with Vertices;
2.4 The Life of a Vertex;
2.5 The Photography Metaphor;
2.6 Saving and Restoring Transforms with Matrix Stacks;
2.7 Animation;
2.8 Vector Beautification with C++;
2.9 HelloCone with Fixed Function;
2.10 HelloCone with Shaders;
2.11 Wrapping Up;
Chapter 3: Vertices and Touch Points;
3.1 Reading the Touchscreen;
3.2 Saving Memory with Vertex Indexing;
3.3 Boosting Performance with Vertex Buffer Objects;
3.4 Creating a Wireframe Viewer;
3.5 Wrapping Up;
Chapter 4: Adding Depth and Realism;
4.1 Examining the Depth Buffer;
4.2 Creating and Using the Depth Buffer;
4.3 Filling the Wireframe with Triangles;
4.4 Surface Normals;
4.5 Lighting Up;
4.6 Shaders Demystified;
4.7 Adding Shaders to ModelViewer;
4.8 Better Wireframes Using Polygon Offset;
4.9 Loading Geometry from OBJ Files;
4.10 Wrapping Up;
Chapter 5: Textures and Image Capture;
5.1 Adding Textures to ModelViewer;
5.2 Texture Coordinates Revisited;
5.3 Fight Aliasing with Filtering;
5.4 Texture Formats and Types;
5.5 Texture Compression with PVRTC;
5.6 The PowerVR SDK and Low-Precision Textures;
5.7 Generating and Transforming OpenGL Textures with Quartz;
5.8 Dealing with Size Constraints;
5.9 Creating Textures with the Camera;
5.10 Wrapping Up;
Chapter 6: Blending and Augmented Reality;
6.1 Blending Recipe;
6.2 Wrangle Premultiplied Alpha;
6.3 Blending Caveats;
6.4 Blending Extensions and Their Uses;
6.5 Shifting Texture Color with Per-Vertex Color;
6.6 Poor Man’s Reflection with the Stencil Buffer;
6.7 Stencil Alternatives for Older iPhones;
6.8 Anti-Aliasing Tricks with Offscreen FBOs;
6.9 Rendering Anti-Aliased Lines with Textures;
6.10 Holodeck Sample;
6.11 Wrapping Up;
Chapter 7: Sprites and Text;
7.1 Text Rendering 101: Drawing an FPS Counter;
7.2 Simplify with glDrawTexOES;
7.3 Crisper Text with Distance Fields;
7.4 Animation with Sprite Sheets;
7.5 Image Composition and a Taste of Multitexturing;
7.6 Mixing OpenGL ES and UIKit;
7.7 Rendering Confetti, Fireworks, and More: Point Sprites;
7.8 Chapter Finale: SpringyStars;
7.9 Wrapping Up;
Chapter 8: Advanced Lighting and Texturing;
8.1 Texture Environments under OpenGL ES 1.1;
8.2 Bump Mapping and DOT3 Lighting;
8.3 Reflections with Cube Maps;
8.4 Anisotropic Filtering: Textures on Steroids;
8.5 Image-Processing Example: Bloom;
8.6 Wrapping Up;
Chapter 9: Optimizing;
9.1 Instruments;
9.2 Understand the CPU/GPU Split;
9.3 Vertex Submission: Above and Beyond VBOs;
9.4 Lighting Optimizations;
9.5 Texturing Optimizations;
9.6 Culling and Clipping;
9.7 Shader Performance;
9.8 Optimizing Animation with Vertex Skinning;
9.9 Further Reading;
C++ Vector Library;
Disclaimer Regarding Performance;
Vector.hpp;
Matrix.hpp;
Quaternion.hpp;
Colophon;

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 3 Customer Reviews
  • Posted February 3, 2011

    Good overview of OpenGl ES

    Nook format is iffy at times for the code segments. The book content is excellent for API detail. Also, side-by-side ES 1.5 and 2.0 examples make it very useful if you are transitioning to ES 2.0. Not for those looking to learn graphics theory.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted April 9, 2012

    No text was provided for this review.

  • Anonymous

    Posted October 25, 2010

    No text was provided for this review.

Sort by: Showing all of 3 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)