普通高等教育“动画与数字媒体专业”规划教材 iPhone 3D游戏编程基础PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:袁冠远编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2013
- ISBN:9787302330530
- 页数:289 页
第1章 数学基础 1
1.1向量 1
1.1.1向量相等 2
1.1.2向量的大小 2
1.1.3向量的规范化 2
1.1.4向量加法 3
1.1.5向量减法 3
1.1.6数与向量的乘积 3
1.1.7向量点积 3
1.1.8向量叉积 4
1.2矩阵 4
1.3变换 6
1.3.1平移变换 6
1.3.2缩放变换 7
1.3.3旋转变换 7
1.3.4矩阵复合 8
1.4思考题 8
第2章 创建OpenGL ES项目 9
2.1开发工具 9
2.1.1 Mac电脑 9
2.1.2 iPhone 9
2.1.3 Xcode 9
2.1.4 Objective-C 10
2.2 OpenGL ES简介 10
2.3选择适当的OpenGL ES版本 11
2.4使用向导创建OpenGL ES项目 11
2.5从头开始创建OpenGL ES项目 15
2.5.1创建Window-based Application 15
2.5.2清理OpenGLES无关信息 16
2.5.3连接OpenGL与Quartz库 19
2.5.4添加UIView子类GLView 19
2.5.5运行结果 27
2.6应用程序设置 27
2.6.1设置应用程序图标 27
2.6.2处理启动画面 28
2.6.3处理状态栏 28
2.6.4运行结果 28
2.7思考题 29
第3章 基本图元 30
3.1 OpenGLES坐标系 30
3.1.1左手和右手坐标系 30
3.1.2 OpenGLES默认坐标系 30
3.2图元 31
3.2.1点图元 31
3.2.2渲染点图元 31
3.2.3线图元 36
3.2.4渲染线图元 37
3.2.5三角形图元 41
3.2.6渲染三角形图元 42
3.3思考题 46
第4章 游戏循环 47
4.1基本的游戏循环 47
4.2几种常见的游戏循环体 48
4.2.1基于帧的循环体 48
4.2.2基于时间的不定间隔循环体 49
4.2.3基于时间的固定间隔循环体 49
4.3 IOS游戏循环驱动器 50
4.4 IOS游戏循环的实现 51
4.4.1修改类声明 51
4.4.2实现新定义的方法 52
4.5游戏(动画)的启动与停止 54
4.6实现简单动画 55
4.7思考题 56
第5章 颜色 57
5.1颜色理论 57
5.1.1 RGB模式 57
5.1.2颜色深度 57
5.1.3颜色立方体模型 57
5.2设置渲染颜色 58
5.3顶点颜色 59
5.4着色模式 60
5.5思考题 61
第6章 顶点格式 62
6.1顶点属性 62
6.2顶点属性的数据类型 63
6.3支持不同数据类型的函数 63
6.4交错顶点数组 64
6.4.1原理 64
6.4.2使用交错顶点数组 65
6.5使用结构体定义顶点数据 66
6.6思考题 68
第7章 纹理 69
7.1概述 69
7.2纹理坐标 69
7.3在OpenGL ES中使用纹理 71
7.3.1定义顶点信息结构体 71
7.3.2设置顶点信息 71
7.3.3创建纹理 71
7.3.4渲染带纹理属性图元 77
7.3.5运行 78
7.4纹理寻址模式 78
7.4.1重复纹理寻址模式 79
7.4.2箝位纹理寻址模式 79
7.4.3分别设置s轴和t轴的纹理寻址模式 80
7.5使用多个纹理 80
7.6思考题 81
第8章 渲染流水线 82
8.1渲染流水线概述 83
8.2变换过程中的坐标系 83
8.3基于OpenGLES的图形变换 84
8.3.1概述 84
8.3.2世界变换 86
8.3.3视图变换 86
8.3.4投影变换 89
8.3.5视口变换 92
8.4思考题 92
第9章 渲染正方体 93
9.1正方体顶点的组成 93
9.2使用OpenGL ES默认变换渲染正方体 93
9.2.1准备项目 93
9.2.2定义顶点属性结构体 93
9.2.3定义顶点数据 94
9.2.4渲染 95
9.2.5运行结果 96
9.3设置投影矩阵以适配屏幕的宽高比 96
9.3.1修改投影矩阵 96
9.3.2运行结果 97
9.4设置模型变换及结果 97
9.4.1设置模型变换 97
9.4.2运行结果 98
9.5设置背面剔除及运行结果 98
9.5.1设置背面剔除 98
9.5.2运行结果 99
9.6设置透视投影及运行结果 99
9.6.1设置透视投影 99
9.6.2运行结果 101
9.6.3使用另一种透视相机模型 101
9.7设置视图变换及运行结果 102
9.7.1设置视图变换 102
9.7.2运行结果 102
9.8使立方体动起来 102
9.9渲染第二个立方体 103
9.10思考题 105
第10章 混合 106
10.1实例:半透明效果 106
10.1.1实验准备 106
10.1.2渲染玻璃 107
10.1.3运行结果 109
10.1.4启用混合 109
10.2混合原理 110
10.2.1混合原理简介 110
10.2.2混合公式 111
10.3渲染带有alpha通道的纹理 112
10.4多次纹理混合 113
10.5 alpha测试 115
10.6思考题 117
第11章 多重纹理 118
11.1原理 118
11.1.1纹理单元 118
11.1.2纹理混合瀑布 119
11.1.3纹理环境参数的设置 119
11.1.4纹理分量 120
11.1.5不同混合模式下纹理分量的计算公式 121
11.1.6合并模式(Combine)下纹理分量的计算公式 121
11.1.7操作 122
11.2实例:颜色、纹理混合 123
11.2.1定义顶点属性结构体 123
11.2.2定义顶点数据 124
11.2.3声明各四边形渲染函数 124
11.2.4渲染函数 125
11.2.5渲染第一个四边形 126
11.2.6渲染第二个四边形 126
11.2.7渲染第三个四边形 127
11.2.8渲染第四个四边形 128
11.2.9渲染第五个四边形 128
11.2.10渲染第六个四边形 130
11.3实例:精灵表动画 131
11.3.1精灵表 131
11.3.2图像合成 131
11.3.3代码实现 132
11.3.4调用代码 137
11.4实例:光照纹理 139
11.4.1原理 139
11.4.2代码 139
11.5思考题 141
第12章 光照 142
12.1光照的组成 142
12.2材质 143
12.3法线 143
12.4法线的计算 144
12.5光源 145
12.6实例:向场景中添加光照 147
12.6.1设置顶点法向量 147
12.6.2设置光源 149
12.6.3立方体渲染函数 149
12.6.4渲染各立方体 150
12.7思考题 153
第13章 创建几何体 154
13.1程序框架重构 154
13.1.1通用函数和结构体 154
13.1.2基类GLViewBase 158
13.1.3派生类GLView 164
13.2圆柱体建模 164
13.2.1剖分方法 164
13.2.2底面建模 165
13.2.3侧面建模 166
13.2.4圆柱体类 166
13.2.5调用圆柱体类 170
13.3球体建模 174
13.3.1剖分方法 174
13.3.2球体类 176
13.3.3调用球体类 180
13.4思考题 182
第14章 顶点索引 183
14.1原理 183
14.2实例:使用顶点索引建模球体 184
14.3思考题 188
第15章 顶点缓存对象 189
15.1原理 189
15.1.1定义缓存对象名 189
15.1.2生成缓存对象名 189
15.1.3绑定缓存对象 189
15.1.4传输缓存数据 190
15.1.5渲染 190
15.2使用顶点缓存对象优化球体模型 190
15.3思考题 194
第16章 深度缓存 195
16.1原理 195
16.1.1准备深度缓存 196
16.1.2清除深度缓存 197
16.1.3启用深度测试 197
16.1.4设置深度测试函数 197
16.1.5渲染 198
16.2实例:使用深度缓存 198
16.2.1准备深度缓存 198
16.2.2清除深度缓存 198
16.2.3启用深度测试渲染图元 199
16.2.4渲染结果 200
16.3控制深度缓存更新 200
16.4思考题 200
第17章 模板缓存 201
17.1原理 201
17.1.1准备模板缓存 202
17.1.2清除模板缓存 203
17.1.3启用模板测试 204
17.1.4设置模板测试函数 204
17.1.5设置模板更新方式 204
17.1.6渲染 205
17.2实例:镜面效果 205
17.2.1概述 205
17.2.2镜面变换 206
17.2.3准备模板缓存 206
17.2.4清除模板缓存 207
17.2.5渲染 207
17.3思考题 208
第18章 加载3D模型 209
18.1常见3D模型文件格式简介 209
18.2 OBJ文件格式简介 211
18.3一些OBJ关键字 211
18.4 MTL关键字 212
18.5 OBJ文件实例 214
18.6 MTL文件实例 214
18.7 WaveFrontObjLoader 215
18.7.1 WaveFrontObjLoader的特点 215
18.7.2 WaveFrontObjLoader的组成 215
18.7.3 WaveFrontOBJScene类 215
18.7.4 WaveFrontOBJ Group类 216
18.7.5使用方式 216
18.8实例:加载OBJ模型并渲染 218
18.8.1准备工作 218
18.8.2修改GLView类的定义 219
18.8.3初始化 219
18.8.4渲染 220
18.9改进 221
18.9.1改进材质类 221
18.9.2修改WaveFrontOBJGroup类的定义 221
18.9.3修改WaveFrontOBJGroup类的实现 222
18.9.4为WaveFrontOBJScene类添加render方法 226
18.9.5调用改进的类 226
18.9.6渲染结果 228
18.10思考题 228
第19章 3D碰撞检测 229
19.1定义包围信息 229
19.2为WaveFrontOBJGroup类添加包围信息 230
19.2.1修改WaveFrontOBJGroup类的定义 230
19.2.2实现Bounding属性 232
19.2.3实现calculateBoundingInfo方法 232
19.3为WaveFrontOBJScene类添加包围信息 233
19.3.1修改WaveFrontOBJScene类定义 233
19.3.2实现Bounding属性 234
19.3.3实现calculateBoundingInfo方法 235
19.4渲染包围盒 236
19.4.1概述 236
19.4.2添加WireFrameBox类 236
19.4.3修改GLView类 237
19.4.4渲染结果 240
19.5实现碰撞检测 240
19.5.1概述 240
19.5.2相关算法 241
19.5.3添加Square类,用于绘制按钮 242
19.5.4修改GLView类,实现实例 244
19.5.5测试程序 250
19.6扩展讨论 250
19.7思考题 251
第20章 地形绘制基础 252
20.1高度图 253
20.1.1原理 253
20.1.2创建高度图 253
20.1.3加载RAW文件 253
20.1.4访问高度图 254
20.2创建地形几何信息 254
20.2.1 Terrain类的定义 254
20.2.2顶点的计算 256
20.2.3索引的计算 258
20.2.4纹理的计算 259
20.3渲染地形 261
20.4在地形中“行走” 261
20.5调用地形类 265
20.6思考题 268
第21章 天空绘制基础 269
21.1原理 269
21.2实现天空盒 270
21.2.1创建天空盒渲染数据 270
21.2.2创建天空盒纹理 271
21.2.3渲染天空盒 272
21.3调用天空盒类 273
21.4思考题 276
第22章 拾取 277
22.1概述 277
22.2原理 278
22.2.1射线的定义 278
22.2.2计算拾取射线 278
22.2.3变换物体到观察坐标系 280
22.2.4射线/物体相交判定 280
22.2.5封装Picking类 282
22.3拾取实例 282
22.3.1修改Sphere类 282
22.3.2修改GLView类的定义 283
22.3.3初始化变量 284
22.3.4实现渲染包围球方法 285
22.3.5修改renderRoles函数 285
22.3.6实现拾取功能 287
22.3.7修改touchesBegan 函数 288
22.3.8运行 288
22.4思考题 288
参考文献 289
- 《全国高等中医药行业“十三五”创新教材 中医药学概论》翟华强 2019
- 《MBA大师.2020年MBAMPAMPAcc管理类联考专用辅导教材 数学考点精讲》(中国)董璞 2019
- 《数字影视特效制作技法解析》王文瑞著 2019
- 《党员干部理论学习培训教材 理论热点问题党员干部学习辅导》(中国)胡磊 2018
- 《“十三五”规划教材 中药鉴定学实验 供中药学 药学及相关专业使用 第2版》吴啟南 2018
- 《危险化学品经营单位主要负责人和安全生产管理人员安全培训教材》李隆庭,徐一星主编 2012
- 《21世纪法学系列教材 配套辅导用书 行政法与行政诉讼法练习题集 第5版》李元起主编 2018
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《全国校外艺术课堂新形态示范教材系列 少儿钢琴表演曲集》唐冠祥编著 2019
- 《全国学前教育专业(新课程标准)“十三五”规划教材 简谱手风琴教程 第2版》(中国)杨克勤,王宝庆 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019