书籍详情
OpenGL ES应用开发实践指南:iOS卷
作者:Erik M.Buck
出版社:机械工业出版社
出版时间:2013-06-01
ISBN:9787111428671
定价:¥69.00
购买这本书可以去
内容简介
《OpenGL ES应用开发实践指南:iOS卷》是一本系统的具备实战性的OpenGL ES 3D图形开发指南。由资深iOS开发专家根据OpenGL ES最新版本撰写,不仅详细讲解了OpenGL ES与GLKit的结合使用,而且还系统讲解OpenGL ES的核心概念、技术,以及iOS的图形机制,并通过大量案例讲解了在iOS上进行OpenGL ES开发的方法和技巧。全书共分12章。第1章介绍了使用嵌入式图形硬件绘制3D图形的最新方法;第2章讲解了如何使用苹果Xcode开发工具和Cocoa Touch面向对象的框架在iPhone、iPod Touch和iPad中开发包括3D图形的程序;第3章涵盖了纹理的底层概念和常用选项;第4章介绍灯光模拟背后的概念,以及利用GLKit并使用相对简单的应用代码演示灯光效果;第5章讲解并演示从任意视点渲染几何对象的技术;第6章介绍如何制作动画;第7章介绍了如何加载并使用模型;第8章讲解了特效的使用;第9章介绍能够提高iOS设备上OpenGL ES 2.0渲染性能的优化策略;第10章讲解了地形和拾取;第11章回顾了3D渲染所需的常见数学运算;第12章涵盖了一个结合地形渲染、天空盒、粒子系统、动画、变化视点、灯光、模型和碰撞检测技术的实例。
作者简介
Erik M. Buck资深iOS应用和苹果应用开发专家,与人合著了《Cocoa Programming》和《Cocoa Design Patterns》等经典著作。1993年创建了他的第一家公司——EMB,这家公司后来发展成了航空航天软件和娱乐软件产业的领导者。Buck还在建筑行业工作过,当过理科8年级的老师,开过帆布油画肖像展,开发过替代燃料交通工具。他还是莱特州立大学计算机科学系的助理教授,当前教的课程是iOS编程。他的网站是www.cosmicthump.com。
目录
译者序
前言
第1章 使用现代移动图形硬件
1.1 3D渲染
1.2 为图形处理器提供数据
1.2.1 缓存:提供数据的最好方式
1.2.2 帧缓存
1.3 OpenGL ES的上下文
1.4 一个3D场景的几何数据
1.4.1 坐标系
1.4.2矢量
1.4.3点、线、三角形
1.5小结
第2章 让硬件为你工作
2.1使用OpenGL ES绘制一个Core Animation层
2.2结合Cocoa Touch和OpenGL ES
2.2.1Cocoa Touch
2.2.2使用苹果开发者工具
2.2.3Cocoa Touch应用架构
2.3OpenGLES_Ch2_1示例
2.3.1OpenGLES_Ch2_1AppDelegate类
2.3.2Storyboards
2.3.3OpenGLES_Ch2_1ViewController类的interface
2.3.4OpenGLES_Ch2_1ViewController类的实现
2.3.5支持文件
2.4深入探讨GLKView是怎么工作的
2.5对于GLKit的推断
2.6小结
第3章 纹理
3.1 什么是纹理
3.1.1对齐纹理和几何图形
3.1.2纹理的取样模式
3.1.3MIP 贴图
3.2OpenGLES_Ch3_1示例
3.3深入探讨GLKTextureLoader是怎么工作的
3.4OpenGLES_Ch3_3示例
3.5透明度、混合和多重纹理
3.5.1在OpenGLES_Ch3_4示例中混合片元颜色
3.5.2 示例OpenGLES_Ch3_5中的多重纹理
3.5.3在OpenGLES_Ch3_6示例中自定义纹理
3.6纹理压缩
3.7小结
第4章 散发一些光线
4.1环境光、漫反射光、镜面反射光
4.2计算有多少光线照向每个三角形
4.3使用GLKit灯光
4.4 OpenGLES_Ch4_1示例
4.5把灯光烘焙进纹理中
4.6片元计算
4.7小结
第5章 改变你的视点
5.1深度渲染缓存(Depth Render Buffer)
5.2例子OpenGLES_Ch5_1和例子OpenGLES_Ch5_2
5.3深入探讨不用GLKit添加深度缓存
5.4变换
5.4.1基本变换
5.4.2顺序很重要
5.4.3projectionMatrix和modelviewMatrix
5.4.4textureMatrix
5.5复合变换手册
5.5.1倾斜
5.5.2围着一个点旋转
5.5.3围着一个点缩放
5.6透视和平截头体
5.7小结
第6章 动画
6.1场景内移动:例子OpenGLES_Ch6_1
6.1.1看向一个特定的3D位置
6.1.2使用时间
6.2动画化顶点数据
6.2.1使用索引顶点
6.2.2OpenGLES_Ch6_2示例
6.3动画化颜色和灯光:例子OpenGLES_Ch6_3
6.4动画化纹理
6.4.1OpenGLES_Ch6_4示例
6.4.2OpenGLES_Ch6_5示例
6.5小结
第7章 加载和使用模型
7.1建模工具和格式
7.2读取modelplist文件
7.3OpenGLES_Ch7_1示例
7.4高级模型
7.4.1骨骼动画
7.4.2蒙皮
7.4.3 逆动力学和物理模拟
7.5小结
第8章 特效
8.1天空盒
8.2深入探讨GLKSkyboxEffect是怎么工作的
8.3 粒子
8.4公告牌
8.5小结
第9章 优化
9.1尽可能减少渲染
9.1.1基于视平截体的剔除
9.1.2简化
9.2不要猜:解析(Profile)
9.2.1工具OpenGL ES Performance Detective
9.2.2工具Instruments
9.3尽量减少缓存复制
9.4尽量减少状态变化
9.5小结
第10章 地形和拾取
10.1地形的实现
10.1.1高度图
10.1.2地形瓦片
10.1.3地形效果
10.2添加模型
10.2.1模型放置
10.2.2模型效果
10.3OpenGL ES摄像机
10.4拾取
10.5优化
10.6小结
第11章 数学速查
11.1概述
11.2解码矩阵
11.2.1从平截体获取矩阵
11.2.2透视
11.2.3矢量的坐标轴分量
11.2.4点变换
11.2.5 转置矩阵和逆矩阵
11.3四元法
11.4常用的图形数学
11.4.1简单矢量运算
11.4.2矢量标量积
11.4.3矢量的矢量积
11.4.4model-view矩阵
11.4.5投影矩阵
11.5小结
第12章 理清整体思路
12.1概述
12.2一切如故
12.2.1控制器子系统
12.2.2模型子系统
12.2.3 视图子系统
12.3设备动作
12.4小结
前言
第1章 使用现代移动图形硬件
1.1 3D渲染
1.2 为图形处理器提供数据
1.2.1 缓存:提供数据的最好方式
1.2.2 帧缓存
1.3 OpenGL ES的上下文
1.4 一个3D场景的几何数据
1.4.1 坐标系
1.4.2矢量
1.4.3点、线、三角形
1.5小结
第2章 让硬件为你工作
2.1使用OpenGL ES绘制一个Core Animation层
2.2结合Cocoa Touch和OpenGL ES
2.2.1Cocoa Touch
2.2.2使用苹果开发者工具
2.2.3Cocoa Touch应用架构
2.3OpenGLES_Ch2_1示例
2.3.1OpenGLES_Ch2_1AppDelegate类
2.3.2Storyboards
2.3.3OpenGLES_Ch2_1ViewController类的interface
2.3.4OpenGLES_Ch2_1ViewController类的实现
2.3.5支持文件
2.4深入探讨GLKView是怎么工作的
2.5对于GLKit的推断
2.6小结
第3章 纹理
3.1 什么是纹理
3.1.1对齐纹理和几何图形
3.1.2纹理的取样模式
3.1.3MIP 贴图
3.2OpenGLES_Ch3_1示例
3.3深入探讨GLKTextureLoader是怎么工作的
3.4OpenGLES_Ch3_3示例
3.5透明度、混合和多重纹理
3.5.1在OpenGLES_Ch3_4示例中混合片元颜色
3.5.2 示例OpenGLES_Ch3_5中的多重纹理
3.5.3在OpenGLES_Ch3_6示例中自定义纹理
3.6纹理压缩
3.7小结
第4章 散发一些光线
4.1环境光、漫反射光、镜面反射光
4.2计算有多少光线照向每个三角形
4.3使用GLKit灯光
4.4 OpenGLES_Ch4_1示例
4.5把灯光烘焙进纹理中
4.6片元计算
4.7小结
第5章 改变你的视点
5.1深度渲染缓存(Depth Render Buffer)
5.2例子OpenGLES_Ch5_1和例子OpenGLES_Ch5_2
5.3深入探讨不用GLKit添加深度缓存
5.4变换
5.4.1基本变换
5.4.2顺序很重要
5.4.3projectionMatrix和modelviewMatrix
5.4.4textureMatrix
5.5复合变换手册
5.5.1倾斜
5.5.2围着一个点旋转
5.5.3围着一个点缩放
5.6透视和平截头体
5.7小结
第6章 动画
6.1场景内移动:例子OpenGLES_Ch6_1
6.1.1看向一个特定的3D位置
6.1.2使用时间
6.2动画化顶点数据
6.2.1使用索引顶点
6.2.2OpenGLES_Ch6_2示例
6.3动画化颜色和灯光:例子OpenGLES_Ch6_3
6.4动画化纹理
6.4.1OpenGLES_Ch6_4示例
6.4.2OpenGLES_Ch6_5示例
6.5小结
第7章 加载和使用模型
7.1建模工具和格式
7.2读取modelplist文件
7.3OpenGLES_Ch7_1示例
7.4高级模型
7.4.1骨骼动画
7.4.2蒙皮
7.4.3 逆动力学和物理模拟
7.5小结
第8章 特效
8.1天空盒
8.2深入探讨GLKSkyboxEffect是怎么工作的
8.3 粒子
8.4公告牌
8.5小结
第9章 优化
9.1尽可能减少渲染
9.1.1基于视平截体的剔除
9.1.2简化
9.2不要猜:解析(Profile)
9.2.1工具OpenGL ES Performance Detective
9.2.2工具Instruments
9.3尽量减少缓存复制
9.4尽量减少状态变化
9.5小结
第10章 地形和拾取
10.1地形的实现
10.1.1高度图
10.1.2地形瓦片
10.1.3地形效果
10.2添加模型
10.2.1模型放置
10.2.2模型效果
10.3OpenGL ES摄像机
10.4拾取
10.5优化
10.6小结
第11章 数学速查
11.1概述
11.2解码矩阵
11.2.1从平截体获取矩阵
11.2.2透视
11.2.3矢量的坐标轴分量
11.2.4点变换
11.2.5 转置矩阵和逆矩阵
11.3四元法
11.4常用的图形数学
11.4.1简单矢量运算
11.4.2矢量标量积
11.4.3矢量的矢量积
11.4.4model-view矩阵
11.4.5投影矩阵
11.5小结
第12章 理清整体思路
12.1概述
12.2一切如故
12.2.1控制器子系统
12.2.2模型子系统
12.2.3 视图子系统
12.3设备动作
12.4小结
猜您喜欢