En savoir plus
Informationen zum Autor 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. Klappentext 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 Zusammenfassung Offers a crash course on the OpenGL graphics library! with an overview of iPhone 3D development. This title helps you work step by step with OpenGL ES! a graphics library designed for embedded systems such as mobile phones! by progressing from simple to more complex programs. Inhaltsverzeichnis 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 ...