本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书名: | OpenGL ES应用开发实践指南:iOS卷[图书]|3768099 |
图书定价: | 69元 |
图书作者: | (美)Erik M.Buck |
出版社: | 机械工业出版社 |
出版日期: | 2013/7/1 0:00:00 |
ISBN号: | 9787111428671 |
开本: | 16开 |
页数: | 265 |
版次: | 1-1 |
作者简介 |
Erik M.Buck,资深iOS应用和苹果应用开发专家,与人合著了《Cocoa Programming》和《Cocoa Design Patterns》等经典著作。1993年创建了他的*家公司——EMB,这家公司后来发展成了航空航天软件和娱乐软件产业的领导者。Buck还在建筑行业工作过,当过理科8年级的老师,开过帆布油画肖像展,开发过替代燃料交通工具。他还是莱特州立大学计算机科学系的助理教授,当前教的课程是iOS编程。 |
内容简介 |
《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章涵盖了一个结合地形渲染、天空盒、粒子系统、动画、变化视点、灯光、模型和碰撞检测技术的实例。 |
目录 |
《OpenGL ES应用开发实践指南:iOS卷》 译者序 前言 第1章使用现代移动图形硬件 / 1 1.1 3D渲染 / 1 1.2为图形处理器提供数据 / 3 1.2.1缓存:提供数据的*好方式 / 4 1.2.2帧缓存 / 5 1.3 OpenGL ES的上下文 / 6 1.4一个3D场景的几何数据 / 7 1.4.1坐标系 / 7 1.4.2矢量 / 9 1.4.3点、线、三角形 / 11 1.5小结 / 11 第2章让硬件为你工作 / 12 2.1使用OpenGL ES绘制一个Core Animation层 / 12 2.2结合Cocoa Touch和OpenGL ES / 14 2.2.1 Cocoa Touch / 14 2.2.2使用苹果开发者工具 / 15 2.2.3 Cocoa Touch应用架构 / 15 2.3 OpenGLES_Ch2_1示例 / 18 2.3.1 OpenGLES_Ch2_1AppDelegate类 / 18 2.3.2 Storyboards / 19 2.3.3 OpenGLES_Ch2_1ViewController类的interface / 19 2.3.4 OpenGLES_Ch2_1ViewController类的实现 / 20 2.3.5支持文件 / 30 2.4深入探讨GLKView是怎么工作的 / 31 2.5对于GLKit的推断 / 40 2.6小结 / 46 第3章纹理 / 48 3.1 什么是纹理 / 48 3.1.1对齐纹理和几何图形 / 49 3.1.2纹理的取样模式 / 50 3.1.3 MIP 贴图 / 52 3.2 OpenGLES_Ch3_1示例 / 52 3.3深入探讨GLKTextureLoader是怎么工作的 / 56 3.4 OpenGLES_Ch3_3示例 / 62 3.5透明度、混合和多重纹理 / 63 3.5.1在OpenGLES_Ch3_4示例中混合片元颜色 / 64 3.5.2示例OpenGLES_Ch3_5中的多重纹理 / 66 3.5.3在OpenGLES_Ch3_6示例中自定义纹理 / 68 3.6纹理压缩 / 70 3.7小结 / 71 第4章散发一些光线 / 72 4.1环境光、漫反射光、镜面反射光 / 73 4.2计算有多少光线照向每个三角形 / 74 4.3使用GLKit灯光 / 79 4.4 OpenGLES_Ch4_1示例 / 80 4.5把灯光烘焙进纹理中 / 86 4.6片元计算 / 87 4.7小结 / 88 第5章改变你的视点 / 89 5.1深度渲染缓存(Depth Render Buffer) / 89 5.2例子OpenGLES_Ch5_1和例子OpenGLES_Ch5_2 / 91 5.3深入探讨不用GLKit添加深度缓存 / 96 5.4变换 / 98 5.4.1基本变换 / 98 5.4.2顺序很重要 / 101 5.4.3 projectionMatrix和modelviewMatrix / 102 5.4.4 textureMatrix / 105 5.5复合变换手册 / 107 5.5.1倾斜 / 107 5.5.2围着一个点旋转 / 107 5.5.3围着一个点缩放 / 107 5.6透视和平截头体 / 108 5.7小结 / 109 第6章动画 / 110 6.1场景内移动:例子OpenGLES_Ch6_1 / 111 6.1.1看向一个特定的3D位置 / 111 6.1.2使用时间 / 113 6.2动画化顶点数据 / 116 6.2.1使用索引顶点 / 118 6.2.2 OpenGLES_Ch6_2示例 / 119 6.3动画化颜色和灯光:例子OpenGLES_Ch6_3 / 122 6.4动画化纹理 / 126 6.4.1 OpenGLES_Ch6_4示例 / 126 6.4.2 OpenGLES_Ch6_5示例 / 128 6.5小结 / 130 第7章加载和使用模型 / 131 7.1建模工具和格式 / 132 7.2读取modelplist文件 / 136 7.3 OpenGLES_Ch7_1示例 / 138 7.4高级模型 / 142 7.4.1骨骼动画 / 142 7.4.2蒙皮 / 147 7.4.3 逆动力学和物理模拟 / 150 7.5小结 / 150 第8章特效 / 151 8.1天空盒 / 151 8.2深入探讨GLKSkyboxEffect是怎么工作的 / 154 8.3 粒子 / 164 8.4公告牌 / 170 8.5小结 / 177 第9章优化 / 178 9.1尽可能减少渲染 / 178 9.1.1基于视平截体的剔除 / 179 9.1.2简化 / 189 9.2不要猜:解析(Profile) / 189 9.2.1工具OpenGL ES Performance Detective / 190 9.2.2工具Instruments / 191 9.3尽量减少缓存复制 / 192 9.4尽量减少状态变化 / 192 9.5小结 / 193 第10章地形和拾取 / 195 10.1地形的实现 / 195 10.1.1高度图 / 196 10.1.2地形瓦片 / 197 10.1.3地形效果 / 200 10.2添加模型 / 205 10.2.1模型放置 / 206 10.2.2模型效果 / 206 10.3 OpenGL ES摄像机 / 208 10.4拾取 / 213 10.5优化 / 221 10.6小结 / 228 第11章数学速查 / 229 11.1概述 / 229 11.2解码矩阵 / 230 11.2.1从平截体获取矩阵 / 233 11.2.2透视 / 236 11.2.3矢量的坐标轴分量 / 237 11.2.4点变换 / 238 11.2.5 转置矩阵和逆矩阵 / 240 11.3四元法 / 241 11.4常用的图形数学 / 242 11.4.1简单矢量运算 / 242 11.4.2矢量标量积 / 243 11.4.3矢量的矢量积 / 243 11.4.4 model-view矩阵 / 244 11.4.5投影矩阵 / 245 11.5小结 / 245 第12章理清整体思路 / 246 12.1概述 / 246 12.2一切如故 / 248 12.2.1控制器子系统 / 249 12.2.2模型子系统 / 250 12.2.3 视图子系统 / 255 12.3设备动作 / 263 12.4小结 / 265 |
编辑推荐 |
资深iOS开发专家根据OpenGL ES*新版本撰写,详细讲解了OpenGL ES与GLKit的结合使用 系统讲解OpenGL ES的核心概念、技术,以及iOS的图形机制,通过大量案例讲解了在iOS上进行OpenGL ES开发的方法和技巧 |