OpenGL ES 2.0游戏开发(上卷)
上QQ阅读APP看书,第一时间看更新

前言

为什么要写这样的一本书

随着智能手机硬件性能的不断提升,如水果忍者、极品飞车、会说话的Tom猫等一批优秀的3D游戏娱乐应用在广大智能机用户间流行开来,与此同时,也带动了手机游戏产业逐渐从2D走向3D。但目前国内专门介绍这方面开发的书籍与资料都非常少,同时3D应用开发的门槛又比较高,使得很多初学者无从下手。根据这种情况,笔者结合多年从事3D游戏应用开发的经验编写了本书。

了解一些3D领域的技术人员都知道,移动嵌入式平台上的3D应用开发主要是基于OpenGL ES的3个版本,即OpenGL ES 1.0、1.1和2.0。OpenGL ES 1.0与1.1是较老的版本,渲染能力很有限,留给开发人员发挥的空间也很有限。本书主要介绍了OpenGL ES 2.0,其采用的是可编程渲染管线,留给了开发人员充分的发挥空间。

本书中在给出实际的开发案例时涉及了Android SDK、Android NDK、iOS、WebGL等主流平台,充分考虑到了各个不同主流目标平台读者的需求。同时,本书中关于OpenGL ES 2.0可编程渲染管线着色器的知识与技术还可以通用于其他的很多移动嵌入式平台,包括Windows Phone、MeeGO、PSP、PlayStation等。因此,学习各种移动嵌入式平台下高级3D应用开发的读者都可以参考此书。

经过一年多见缝插针式的写作,本书终于交稿了。回顾写书的这一年时间,不禁为自己能最终完成这个耗时费力的“大制作”而感到欣慰。同时也为自己能将从事游戏开发近10年来积累的宝贵经验以及编程感悟分享给正在开发阵线上埋头苦干的广大开发人员而感到高兴。

贾岛的《剑客》一诗有言:“十年磨一剑,霜刃未曾试,今日把示君,谁有不平事?”从1998年首次接触Java与OpenGL算起,到现在也是10年有余。笔者希望用10年的知识和经验磨出的利剑能够帮助广大读者在实际工作中披荆斩棘、奋勇向前。

本书特点

1.内容丰富,由浅入深

本书组织上本着“起点低,终点高”的原则,内容覆盖了从学习OpenGL ES 2.0必知必会的基础知识到基于OpenGL ES 2.0实现各种高级特效,书的最后还给出了完整的大型3D游戏案例。其中的两个案例是笔者带领学员参加谷歌(Google)2011第二届Android应用开发中国大学生挑战赛的获奖作品,其中第16章的夜鹰行动更是获全国总决赛前5名大奖的作品。

这样的内容组织使学习移动嵌入式3D应用开发的初学者可以一步一步成长为3D开发的达人,符合绝大部分想学习3D应用开发的学生与程序开发人员以及相关技术人员的需求。

2.结构清晰,讲解到位

本书中配合每个需要讲解的知识点都给出了丰富的插图与完整的案例,使得初学者易于上手,有一定基础的读者便于深入。书中所有的案例均是根据笔者多年的开发心得进行设计的,结构清晰,便于读者进行学习。同时书中还给出了很多笔者多年来积累的编程技巧与心得,具有很高的参考价值。

3.非常实用的光盘

为了便于读者学习,本书附赠的光盘中包含了书中所有案例的完整源代码,最大限度地帮助读者快速掌握开发技术。

内容导读

本书共分为17章,内容按照必知必会的基础知识、基于OpenGL ES 2.0实现基本特效以及真实大型游戏案例的顺序进行详细地讲解。

本书内容丰富,从基本知识到高级特效;从简单的应用程序到完整的3D游戏案例,适合不同需求、不同水平层次的各类读者。

· 初学OpenGL ES 2.0 3D应用开发的读者

本套书《OpenGL ES 2.0游戏开发(上卷)》和《OpenGL ES 2.0游戏开发(下卷)》内容包括在各个主流平台下进行3D应用开发各方面的知识,内容由浅入深,配合详细的案例。非常适合3D游戏的初学者循序渐进地学习,最终成为3D游戏应用开发的达人。

· 有一定3D开发基础希望进一步深入学习OpenGL ES 2.0高级3D开发技术的读者

本套书不仅包括了OpenGL ES 2.0开发的基础知识,同时也包括了基于OpenGL ES 2.0实现高级特效以及完整的游戏案例,有利于有一定基础的开发人员进一步提高开发水平与能力。

本书作者

吴亚峰,毕业于北京邮电大学,后留学澳大利亚卧龙岗大学取得硕士学位。1998年开始从事Java应用的开发,有10多年的Java开发与培训经验。主要的研究方向为OpenGL ES、手机游戏、Java EE以及搜索引擎。同时为手机游戏、Java EE独立软件开发工程师,并兼任百纳科技Java培训中心首席培训师。近10年来为数10家著名企业培养了上千名高级软件开发人员,曾编写过《菜鸟成长之路——Java程序员职场全攻略》、《Android 3D游戏案例开发大全》、《Android平板电脑开发实战详解和典型案例》、《Android游戏开发大全》、《Android应用案例开发大全》、《Unity 3D游戏开发技术详解与典型案例》等多本畅销技术书籍。2008年年初开始关注Android平台下的应用开发,并开发出一系列优秀的Android 3D应用程序与游戏。

本书在编写过程中得到了唐山百纳科技有限公司Java培训中心的大力支持,同时仇磊、李腾飞、夏学良、王旅波、李胜杰、代其祥、蒋科、任俊钢、章雅卓、付鹏、白冰以及家人为本书的编写提供了很多帮助,在此表示衷心的感谢!

由于笔者的水平和学识有限,且书中涉及的知识较多,难免有错误和疏漏之处,敬请广大读者批评指正,并多提宝贵意见。本书责任编辑联系邮箱为:zhangtao@ptpress.com.cn。

编者