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

Specificaties
Paperback, 286 blz. | Engels
Wrox | 1e druk, 2012
ISBN13: 9781119975915
Rubricering
Hoofdrubriek : Computer en informatica
Wrox 1e druk, 2012 9781119975915
Verwachte levertijd ongeveer 9 werkdagen

Samenvatting

Learn how to build games with stunning graphics

Striking the ideal balance between aesthetics and functionality to create a state-of-the-art game is no small feat. That's where this book comes in. If you have a decent C/C++ programming background and a basic understanding of computer graphics, you'll find that this invaluable resource includes everything you need to know in order to make quick work of creating a full-fledged game.

Successful game engine developer Romain Marucchi-Foino covers all aspects of creating a game, such as loading complex geometries and textures; handling GLSL materials, sounds, cameras, and clippings; physics; pathfinding and AI; post-processing effects; real-time lighting and shadowing; working with skeletal animations; and much more. Before you know it, you'll be able to apply the knowledge you've gained from this book to create your own sophisticated game.

Game and Graphics Programming for iOS and Android with OpenGL ES 2.0:
- Brings awareness to the powerful potential of OpenGL ES 2.0 in game programming
- Includes helpful tutorials and real-world mobile apps to give you a deeper understanding of what works in programming
- Demonstrates how to work with OpenGL features, including geometry, shaders, lighting, special effects, character animation, and more
- Addresses real-time physics, pathfinding, and optimization
- Zeroes in on audio and other cool and unique game programming possibilities

Wrox guides are crafted to make learning programming languages and technologies easier than you think. Written by programmers for programmers, they provide a structured, tutorial format that guides you through all the techniques involved.

wrox.com
- Programmer Forums
Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world.
- Code Downloads
Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use.
- Read More
Find articles, ebooks, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you.

Specificaties

ISBN13:9781119975915
Taal:Engels
Bindwijze:paperback
Aantal pagina's:286
Uitgever:Wrox
Druk:1
Verschijningsdatum:2-3-2012

Over Romain Marucchi-Fonio

Romain Marucchi-Foino is the original author and founder of the popular mobile game engine SIO2. Formerly a desktop game engine developer, Romain is currently the lead 3D engine programmer for sio2interactive.com, the official developer of the SIO2 Engine, which powers thousands of games and 3D applications throughout the App Store and the Android market.

Andere boeken door Romain Marucchi-Fonio

Inhoudsopgave

INTRODUCTION

1. GETTING STARTED
-Software Requirements
-For iOS Developers
-For Android Developers
-Downloading the Book's SDK
-Importing Projects
-For iOS Developers
-For Android Developers
-The Template
-Summary

2. SETTING UP YOUR GRAPHIC PROJECTIONS
-The Three Basic Types of Projections
-Orthographic 2D Projection
-Program and Project Initialization
-Vertex and Fragment Shader
-Linking a Shader Program
-The Drawing Code
-Orthographic Projection
-Getting Orthographic
-Perspective Projection
-Summary

3. DEALING WITH COMPLEX GEOMETRY
-The Wavefront File Format
-Cube.obj
-Cube.mtl
-Preparing the OBJ Viewer Code
-Loading an OBJ
-Building the Shaders
-The Vertex Shader
-The Fragment Shader
-Vertex Buff er Object
-Storing the Vertex Data
-Building the Vertex Data Array VBO
-Building the Element Array VBO
-Building the VAO
-Rendering Momo
-Handling Touche
-Per-Vertex Lighting
-Vertex Shader Light Calculation
-Modifying the Fragment Shader
-More Uniforms
-Making Momo Furrier
-Loading the Texture
-Adjusting the Vertex Data
-Adding UV Support to the Vertex Shader
-Adding Texture Support to Your Fragment Shader
-Binding the Texture
-Summary

4. BUILDING A SCENE
-Handling Multiple Objects
-The Code Structure
-Loading and Drawing the Scene
-The Shaders Code
-The Diff erent Object Types
-The Drawing Sequence
-Fixing the Scene
-Uber Shader
-Using Your Uber Shader
-Render Loop Objects Categorization
-Double-Sided
-Per-Pixel Lighting
-Making the Vertex Shader Even Fatter
-Getting the Fragment Shader More Uber
-Wrapping Up the Implementation
-Summary

5. OPTIMIZATION
-The Base App
-Triangles to Triangle Strips
-Building Triangle Strips
-Texture Optimization
-Adding 16-Bit Texture Conversion
-PVR Texture Compression
-Faking Details
-Bump Mapping Implementation
-Precision Qualifi ers Optimization
-The Normal Map Lighting Calculation
-Adding Specularity
-Geometry and Shaders LOD
-Texture Atlas
-Managing States in Software
-Automatic Shader Optimization
-Summary

6. REAL-TIME PHYSICS
-Types of Physical Objects
-Physics Shapes
-Using Bullet
-Hello Physics
-Collision Callbacks, Triggers, and Contacts
-Contact-Added Callback
-Near Callback
-Contact Points
-2D Physics
-More Shapes!
-Building the Physical Objects
-Camera Tracking
-User Interactions
-The Game Logic
-3D Physics
-The Bullet File Format
-3D Pinball Game
-Summary

7. CAMERA
-Touch and Go!
-The Camera Frustum
-How to Build the Frustum
-Frustum Clipping Implementation
-More Clipping Functions
-Camera Fly Mode
-First-Person Camera with Collision Detection
-3D Camera Tracking
-Third-Person Camera with Collision
-Summary

8. PATHFINDING
-Recast and Detour
-Navigation
-Creating the Navigation Mesh
-3D Physics Picking
-Player's Auto Drive
-Visualizing the Way Points
-Catch Me If You Can!
-Know Your Enemy
-Game State Logic
-Summary

9. AUDIO AND OTHER COOL GAME PROGRAMMING STUFF
-OpenAL
-OGG Vorbis
-Hello World OpenAL Style
-Initializing OpenAL
-Static In-Memory Sound Playback
-Positional Sound Source
-Piano Game
-Loading a Static and Streamed Sound
-Color Picking
-Piano Game Logic
-Final Adjustments
-Rolling Ball Game
-GFX Shaders
-Linking the Positional Sound Sources
-Accelerometer-Driven Camera
-Cheap FX
-Game Logic and Tweaks
-Summary

10. ADVANCED LIGHTING
-Types of Lamps
-Let There Be Light
-Directional Lamp Shader
-Struct as Uniforms
-Point Light
-Point Light Shader Code
-Light Attenuation
-Point Light with Attenuation Code
-The Attenuation Uniforms
-Spherical Point Light
-Tweaking the Point Light Code
-Spot Light
-Spot Light Shader Code
-Multiple Lights
-Making the Shader Program Dynamic
-Summary

11. ADVANCED FX
-Render to Texture
-Post-Processing Eff ects
-First Rendering Pass
-Second Pass
-Fullscreen Pass and Blur Shader
-Projected Texture
-Projector Shader
-Projected Real-Time Shadows
-Casting Shadows Using the Depth Texture
-A Few More Words about the Frame Buffer Object 2
-Particles
-Summary

12. SKELETAL ANIMATION
-Traditional vs. Modern Animation Systems
-The MD5 File Format
-Loading an MD5 Mesh
-Animating the Mesh
-LERP
-SLERP
-Blending Animation
-Additive Blending
-Summary

INDEX

Net verschenen

Rubrieken

Populaire producten

    Personen

      Trefwoorden

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