Graphics and game developers must learn to program for mobility. This book will teach you how.
"This book - written by some of the key technical experts...provides a comprehensive but practical and easily understood introduction for any software engineer seeking to delight the consumer with rich 3D interactive experiences on their phone. Like the OpenGL ES and M3G standards it covers, this book is destined to become an enduring standard for many years to come."
- Lincoln Wallen, CTO, Electronic Arts, Mobile
"This book is an escalator, which takes the field to new levels. This is especially true because the text ensures that the topic is easily accessible to everyone with some background in computer science...The foundations of this book are clear, and the authors are extremely knowledgeable about the subject."
- Tomas Akenine-Möller, bestselling author and Professor of Computer Science at Lund University
"This book is an excellent introduction to M3G. The authors are all experienced M3G users and developers, and they do a great job of conveying that experience, as well as plenty of practical advice that has been proven in the field."
- Sean Ellis, Consultant Graphics Engineer, ARM Ltd
The exploding popularity of mobile computing is undeniable. From cell phones to portable gaming systems, the global demand for multifunctional mobile devices is driving amazing hardware and software developments. 3D graphics are becoming an integral part of these ubiquitous devices, and as a result, Mobile 3D Graphics is arguably the most rapidly advancing area of the computer graphics discipline.
Mobile 3D Graphics is about writing real-time 3D graphics applications for mobile devices. The programming interfaces explained and demonstrated in this must-have reference enable dynamic 3D media on cell phones, GPS systems, portable gaming consoles and media players.
The text begins by providing thorough coverage of background essentials, then presents detailed hands-on examples, including extensive working code in both of the dominant mobile APIs, OpenGL ES and M3G.
C/C++ and Java Developers, graphic artists, students, and enthusiasts would do well to have a programmable mobile phone on hand to try out the techniques described in this book.
The authors, industry experts who helped to develop the OpenGL ES and M3G standards, distill their years of accumulated knowledge within these pages, offering their insights into everything from sound mobile design principles and constraints, to efficient rendering, mixing 2D and 3D, lighting, texture mapping, skinning and morphing.
Along the way, readers will benefit from the hundreds of included tips, tricks and caveats.
*Written by key industry experts who helped develop the standards of the field
*Hands-on code examples are presented throughout the book, and are also offered on the companion website
*Provides examples in the two most popular programing interfaces, OpenGL ES and M3G
About the Authors
CHAPTER 1. INTRODUCTION
PART I ANATOMY OF A GRAPHICS ENGINE
CHAPTER 2. LINEAR ALGEBRA FOR 3D GRAPHICS
CHAPTER 3. LOW-LEVEL RENDERING
CHAPTER 4. ANIMATION
CHAPTER 5. SCENE MANAGEMENT
CHAPTER 6. PERFORMANCE AND SCALABILITY
PART II OPENGL ES AND EGL
CHAPTER 7. INTRODUCING OPENGL ES
CHAPTER 8. OPENGL ES TRANSFORMATION AND LIGHTING
CHAPTER 9. OPENGL ES RASTERIZATION AND FRAGMENT PROCESSING
CHAPTER 10. MISCELLANEOUS OPENGL ES FEATURES
CHAPTER 11. EGL
PART III M3G
CHAPTER 12. INTRODUCING M3G
CHAPTER 13. BASIC M3G CONCEPTS
CHAPTER 14. LOW-LEVEL MODELING IN M3G
CHAPTER 15. THE M3G SCENE GRAPH
CHAPTER 16. ANIMATION IN M3G
PART IV APPENDIX
A FIXED-POINT MATHEMATICS
B JAVA PERFORMANCE TUNING