Learning OpenGL ES for iOS

A Hands-on Guide to Modern 3D Graphics Programming
 
 
Addison Wesley (Verlag)
  • 1. Auflage
  • |
  • erschienen am 31. Juli 2012
  • |
  • 352 Seiten
 
E-Book | ePUB mit Adobe-DRM | Systemvoraussetzungen
978-0-13-247892-2 (ISBN)
 

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.

Coverage includes

. 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

1. Auflage
  • Englisch
  • Boston
  • |
  • USA
Pearson Education (US)
  • Für höhere Schule und Studium
  • 26,91 MB
978-0-13-247892-2 (9780132478922)

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.

Preface x

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

Summary 17

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

Summary 58

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

Summary 85

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

Summary 106

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

Transformations 117

Transformation Cookbook 129

Perspective and the Viewing Frustum 130

Summary 132

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

Summary 157

7 Loading and Using Models 159

Modeling Tools and Formats 160

Reading modelplist Files 165

The OpenGLES_Ch7_1 Example 168

Advanced Models 172

Summary 181

8 Special Effects 183

Skybox 183

Deep Dive: How Does GLKSkyboxEffect Work? 186

Particles 199

Billboards 206

Summary 216

9 Optimization 217

Render as Little as Possible 218

Don't Guess: Profile 232

Minimize Buffer Copying 234

Minimize State Changes 235

Summary 236

10 Terrain and Picking 237

Terrain Implementation 237

Adding Models 249

OpenGL ES Camera 253

Picking 258

Optimizing 267

Summary 274

11 Math Cheat Sheet 277

Overview 278

Decoding a Matrix 279

Quaternions 296

Surviving Graphics Math 297

Summary 301

12 Putting It All Together 303

Overview 304

Everything All the Time 306

Device Motion 323

Summary 325

Index 327

Dateiformat: ePUB
Kopierschutz: Adobe-DRM (Digital Rights Management)

Systemvoraussetzungen:

Computer (Windows; MacOS X; Linux): Installieren Sie bereits vor dem Download die kostenlose Software Adobe Digital Editions (siehe E-Book Hilfe).

Tablet/Smartphone (Android; iOS): Installieren Sie bereits vor dem Download die kostenlose App Adobe Digital Editions (siehe E-Book Hilfe).

E-Book-Reader: Bookeen, Kobo, Pocketbook, Sony, Tolino u.v.a.m. (nicht Kindle)

Das Dateiformat ePUB ist sehr gut für Romane und Sachbücher geeignet - also für "fließenden" Text ohne komplexes Layout. Bei E-Readern oder Smartphones passt sich der Zeilen- und Seitenumbruch automatisch den kleinen Displays an. Mit Adobe-DRM wird hier ein "harter" Kopierschutz verwendet. Wenn die notwendigen Voraussetzungen nicht vorliegen, können Sie das E-Book leider nicht öffnen. Daher müssen Sie bereits vor dem Download Ihre Lese-Hardware vorbereiten.

Bitte beachten Sie bei der Verwendung der Lese-Software Adobe Digital Editions: wir empfehlen Ihnen unbedingt nach Installation der Lese-Software diese mit Ihrer persönlichen Adobe-ID zu autorisieren!

Weitere Informationen finden Sie in unserer E-Book Hilfe.


Download (sofort verfügbar)

20,99 €
inkl. 7% MwSt.
Download / Einzel-Lizenz
ePUB mit Adobe-DRM
siehe Systemvoraussetzungen
E-Book bestellen