《OpenGL ES应用开发实践指南:Android卷》—— 导读

47e478e82fc203c359641d4f75fe0a7aa7397a2f

前 言

Android刚刚经历了一个难以置信的增长周期,全世界的消费者手里有超过7.5亿台设备,并且每天都有一百多万台设备被激活。和Apple一样,在每一台Android手机和平板上也有个集中的市场,称为Google Play。随着这个市场被安装到每台Android设备上,对任何一个梦想着发布自己的游戏或者壁纸的人来说,这都是个前所未有的机会。
在Android上,与Apple的iOS及许多其他移动平台一样,开发者可以使用一个跨平台应用编程接口创建二维或者三维图形,这个接口称为OpenGL;OpenGL已经用于桌面系统很长时间了,但移动平台上使用的是一个特殊的嵌入式版本,叫做OpenGL ES。第一个版本的OpenGL ES把三维带进了移动平台,它在开发者中非常流行,因为它非常简单易学,同时还包含了一个定义好的特性集合。然而,这个特性集合也很有限,它无法跟上大多数高性能智能手机和平板电脑所提供的先进的、卓越的特性。
发展到了OpenGL ES 2.0,大多数旧的API被淘汰了,取而代之的是新的可编程API,它更容易增加特殊的效果,也能利用最新的硬件所提供的优势。这些设备现在也能生成其他竞争平台几年前就实现的图形了!然而,为了利用这个能力,我们需要学习2.0引进的这些新的API。在2012年8月,Khronos工作组最终确定了下一版本的规范,即OpenGL ES 3.0,它完全兼容2.0,只是在其基础上扩展了一些先进的特性。
因此,Android上的OpenGL到底能做什么呢?我们可以创建令人惊艳的动态壁纸(live wallpaper),这些壁纸可以被数百万的用户下载;我们可以创建有竞争力的三维游戏,它们有着栩栩如生的、令人窒息的图形效果。随着硬件成本的降低,以及在线商店的大量普及,是时候开始学习了!
本书的主要内容
快速浏览一下我们将要讨论的内容:
在本书第一部分,会学习如何创建一个简单的空气曲棍球游戏,包括触控、纹理和基本原理。这个项目会教你如何成功地初始化OpenGL并将数据发送到屏幕上,以及如何使用基本的向量和矩阵数学创建三维世界。你也会学到Android的许多特定细节,比如在Dalvik虚拟机和本地环境之间编码数据(marshal data)以及如何在主线程和渲染线程间安全地传送数据。
在本书第二部分,你就可以在第一部分学习到的知识的基础上开始搭建三维世界中的效果,比如光照和地形渲染,接下来还会学习如何创建可以运行在Android主屏幕(home screen)上的动态壁纸。
本书的读者对象
如果对在Android上开发更高级的图形程序感兴趣,本书就是为你所写的。本书假定你有一些编程经验,包括Java和Android的经验。

目 录

第1章 准备开始
1.1 安装工具
1.2 创建第一个程序
1.3 初始化OpenGL
1.4 创建Renderer类
1.5 使用静态导入
1.6 小结

第一部分 一个简单的空气曲棍球游戏
第2章 定义顶点和着色器
2.1 为什么选择空气曲棍球
2.2 不要从头开始
2.3 定义空气曲棍球桌子的结构
2.4 使数据可以被OpenGL存取
2.5 引入OpenGL管道
2.6 OpenGL颜色模型
2.7 小结

第3章 编译着色器及在屏幕上绘图
3.1 加载着色器
3.2 编译着色器
3.3 把着色器一起链接进OpenGL的程序
3.4 做最后的拼接
3.5 在屏幕上绘制
3.6 小结
3.7 练习

第4章 增加颜色和着色
4.1 平滑着色
4.2 引入三角形扇
4.3 增加一个新的颜色属性
4.4 使用新的颜色属性渲染
4.5 小结
4.6 练习
第5章 调整屏幕的宽高比
5.1 宽高比的问题
5.2 使用虚拟坐标空间
5.3 线性代数基础
5.4 定义正交投影
5.5 加入正交投影
5.6 小结
5.7 练习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值