| 授课时间 
                                       | 培训内容 
                                       | 
                                 
                                  | 第一阶段 | iphone游戏开发思想和Open GL 3D 
                                      游戏开发流程
 Transitioning to Apple Technology
 A Brief History of OpenGL ES
 Choosing the Appropriate Version of OpenGL 
                                      ES
 Getting Started
 HelloArrow with Fixed Function
 HelloArrow with Shaders
 | 
                                 
                                  | 第二阶段--动画与2D、3D绘图,使用Quartz绘图
 | 动画与2D、3D绘图,使用QuartzL绘图 
 1 图形世界的两个视图
 2 本章的绘图应用程序
 3 Quart绘图方法
 3.1 Quartz 2D的图形上下文
 3.2 坐标系
 3.3 指定颜色
 3.4 在上下文中绘制图像
 3.5 绘制形状:多边形、直线和曲线
 3.6 Quartz 2D工具示例:模式、梯度、虚线模式
 4 构建QuartzFun应用程序
 4.1 创建随机颜色
 4.2 定义应用程序常量
 4.3 实现QuartzFunView框架
 4.4 向视图控制器中添加输出口和操作
 4.5 更新QuartzFunViewContro-ller.xib
 4.6 绘制直线
 4.7 绘制矩形和椭圆形
 4.8 绘制图像
 4.9 优化QuartzFun应用程序
 | 
                                 
                                  | 第三阶段 | 算法,隐喻,纹理映射我们的矩形 
 The Assembly Line Metaphor
 Assembling Primitives from Vertices
 Associating Properties with Vertices
 The Life of a Vertex
 The Photography Metaphor
 Saving and Restoring Transforms with Matrix 
                                    Stacks
 Animation
 Vector Beautification with C++
 HelloCone with Fixed Function
 HelloCone with Shaders
 | 
                                 
                                  | 第四阶段 | 节点与触摸点
 Reading the Touchscreen
 Saving Memory with Vertex Indexing
 Boosting Performance with Vertex Buffer Objects
 Creating a Wireframe Viewer
 | 
                                 
                                  | 第五阶段 | 3D坐标里的物体,增加立体感和真实性 
                                    
                                    Adding Depth and Realism Examining the Depth Buffer
 Creating and Using the Depth Buffer
 Filling the Wireframe with Triangles
 Surface Normals
 Lighting Up
 Shaders Demystified
 Adding Shaders to ModelViewer
 Better Wireframes Using Polygon Offset
 Loading Geometry from OBJ Files
 | 
                                 
                                  | 第六阶段 | 纹理和图像捕捉 
 Adding Textures to ModelViewer
 Texture Coordinates Revisited
 Fight Aliasing with Filtering
 Texture Formats and Types
 Texture Compression with PVRTC
 The PowerVR SDK and Low-Precision Textures
 Generating and Transforming OpenGL Textures 
                                    with Quartz
 Dealing with Size Constraints
 Creating Textures with the Camera
 | 
                                 
                                  | 第七阶段 | 混合色的使用及纹理渲染 Blending Recipe
 Wrangle Premultiplied Alpha
 Blending Caveats
 Blending Extensions and Their Uses
 Shifting Texture Color with Per-Vertex Color
 Poor Man’s Reflection with the Stencil Buffer
 Stencil Alternatives for Older iPhones
 Anti-Aliasing Tricks with Offscreen FBOs
 Rendering Anti-Aliased Lines with Textures
 Holodeck Sample
 | 
                                 
                                  | 第八阶段 | 游戏界面和文本 Text Rendering 101: Drawing an FPS Counter
 Simplify with glDrawTexOES
 Crisper Text with Distance Fields
 Animation with Sprite Sheets
 Image Composition and a Taste of Multitexturing
 Mixing OpenGL ES and UIKit
 Rendering Confetti, Fireworks, and More: Point 
                                    Sprites
 Finale: SpringyStars
 | 
                                 
                                  | 第九阶段 | 光效和纹理的高级应用 Texture Environments under OpenGL ES 1.1
 Bump Mapping and DOT3 Lighting
 Reflections with Cube Maps
 Anisotropic Filtering: Textures on Steroids
 Image-Processing Example: Bloom
 | 
                                 
                                  | 第十阶段 | 优化技巧 Instruments
 Understand the CPU/GPU Split
 Vertex Submission: Above and Beyond VBOs
 Lighting Optimizations
 Texturing Optimizations
 Culling and Clipping
 Shader Performance
 Optimizing Animation with Vertex Skinning
 |