O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Game and Graphics Programming for iOS and Android® with OpenGL® ES 2.0

Book Description

Develop graphically sophisticated apps and games today!

The smart phone app market is progressively growing, and there is new market gap to fill that requires more graphically sophisticated applications and games. Game and Graphics Programming for iOS and Android with OpenGL ES 2.0 quickly gets you up to speed on understanding how powerful OpenGL ES 2.0 technology is in creating apps and games for amusement and effectiveness. Leading you through the development of a real-world mobile app with live code, this text lets you work with all the best features and tools that Open GL ES 2.0 has to offer.

  • Provides a project template for iOS and Android platforms

  • Delves into OpenGL features including drawing canvas, geometry, lighting effects, character animation, and more

  • Offers explanation of full-function 2D and 3D graphics on embedded systems

  • Addresses the principal technology for hardware-accelerated graphical rendering

Game and Graphics Programming for iOS and Android with OpenGL ES 2.0offers important, need-to-know information if you're interested in striking a perfect balance between aesthetics and functionality in apps.

Table of Contents

  1. Cover
  2. Contents
  3. Introduction
  4. Chapter 1: Getting Started
    1. Software Requirements
    2. Downloading the Book’s SDK
    3. Importing Projects
    4. The Template
    5. Summary
  5. Chapter 2: Setting Up Your Graphic Projections
    1. The Three Basic Types of Projections
    2. Orthographic 2D Projection
    3. Orthographic Projection
    4. Perspective Projection
    5. Summary
  6. Chapter 3: Dealing with Complex Geometry
    1. The Wavefront File Format
    2. Preparing the OBJ Viewer Code
    3. Loading an OBJ
    4. Building the Shaders
    5. Building the VAO
    6. Rendering Momo
    7. Handling Touche
    8. Per-Vertex Lighting
    9. Making Momo Furrier
    10. Summary
  7. Chapter 4: Building a Scene
    1. Handling Multiple Objects
    2. The Code Structure
    3. Loading and Drawing the Scene
    4. The Shaders Code
    5. The Different Object Types
    6. The Drawing Sequence
    7. Fixing the Scene
    8. Per-Pixel Lighting
    9. Summary
  8. Chapter 5: Optimization
    1. The Base App
    2. Triangles to Triangle Strips
    3. Building Triangle Strips
    4. Texture Optimization
    5. Adding 16-Bit Texture Conversion
    6. PVR Texture Compression
    7. Faking Details
    8. Geometry and Shaders LOD
    9. Texture Atlas
    10. Managing States in Software
    11. Automatic Shader Optimization
    12. Summary
  9. Chapter 6: Real-Time Physics
    1. Types of Physical Objects
    2. Physics Shapes
    3. Using Bullet
    4. Hello Physics
    5. Collision Callbacks, Triggers, and Contacts
    6. 2D Physics
    7. 3D Physics
    8. Summary
  10. Chapter 7: Camera
    1. Touch and Go!
    2. The Camera Frustum
    3. Camera Fly Mode
    4. First-Person Camera with Collision Detection
    5. 3D Camera Tracking
    6. Third-Person Camera with Collision
    7. Summary
  11. Chapter 8: Pathfinding
    1. Recast and Detour
    2. Navigation
    3. Creating the Navigation Mesh
    4. 3D Physics Picking
    5. Player’s Auto Drive
    6. Visualizing the Way Points
    7. Catch Me If You Can!
    8. Know Your Enemy
    9. Game State Logic
    10. Summary
  12. Chapter 9: Audio and Other Cool Game Programming Stuff
    1. OpenAL
    2. OGG Vorbis
    3. Hello World OpenAL Style
    4. Initializing OpenAL
    5. Static In-Memory Sound Playback
    6. Positional Sound Source
    7. Piano Game
    8. Rolling Ball Game
    9. Summary
  13. Chapter 10: Advanced Lighting
    1. Types of Lamps
    2. Let There Be Light
    3. Point Light
    4. Multiple Lights
    5. Making the Shader Program Dynamic
    6. Summary
  14. Chapter 11: Advanced FX
    1. Render to Texture
    2. Post-Processing Effects
    3. Projected Texture
    4. Projector Shader
    5. Projected Real-Time Shadows
    6. Casting Shadows Using the Depth Texture
    7. A Few More Words about the Frame Buffer Object
    8. Particles
    9. Summary
  15. Chapter 12: Skeletal Animation
    1. Traditional vs. Modern Animation Systems
    2. The MD5 File Format
    3. Loading an MD5 Mesh
    4. Animating the Mesh
    5. Blending Animation
    6. Additive Blending
    7. Summary