• Android 3D游戏开发技术宝典:OpenGL ES 2.0
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

Android 3D游戏开发技术宝典:OpenGL ES 2.0

30.05 2.8折 108 九品

仅1件

北京东城
认证卖家担保交易快速发货售后保障

作者吴亚峰 著

出版社人民邮电出版社

出版时间2012-05

版次1

装帧平装

货号A3

上书时间2024-11-24

图书-天下的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:九品
图书标准信息
  • 作者 吴亚峰 著
  • 出版社 人民邮电出版社
  • 出版时间 2012-05
  • 版次 1
  • ISBN 9787115277701
  • 定价 108.00元
  • 装帧 平装
  • 开本 16开
  • 纸张 胶版纸
  • 页数 749页
  • 正文语种 简体中文
【内容简介】
 《Android 3D游戏开发技术宝典:OpenGL ES 2.0》作者答疑与Android 3D相关的技术资料分享 请到优亿社区 Android 3D游戏开发小组下载。

 随着智能手机移动嵌入式平台硬件性能的不断提升,3D游戏应用也逐渐普及开来。《Android3D游戏开发技术宝典:OpenGLES2.0》结合作者多年从事3D游戏应用开发的宝贵经验,全面介绍了与Android平台相关的必知必会的基础知识及大型完整3D案例,讲解上由浅入深,循序渐进,起点低、终点高,既适合初学者学习,也适合有一定基础的读者进一步提升之用。另外,由于OpenGLES2.0的着色语言通用于各种移动嵌入式平台,因此,《Android3D游戏开发技术宝典:OpenGLES2.0》中与着色器开发相关的60%左右的内容还可供iPhone、WindowsMobile、MeeGoo等平台的开发人员参考。

全书共22章,其中第1章与第2章为Android平台相关的一些基础知识;第3章~第10章介绍了基于OpenGLES2.0进行3D应用开发的一些必知必会的基本知识;第11章~第15章介绍了一些高级特效的实现方法;第16章~第17章介绍了3D游戏开发中相关的一些物理、碰撞检测知识以及常用的3D物理引擎JBullet;第19章介绍了3种人机交互的高级技术;第20章~第22章给出了3个完整的大型3D游戏案例,总代码量接近6万行。同时为了便于读者的学习,《Android3D游戏开发技术宝典:OpenGLES2.0》附赠的光盘中包含了书中所有案例的完整源代码,同时给出了最后3个完整大型3D游戏案例的讲解视频,最大限度地帮助读者快速掌握相应的开发技术。

《Android3D游戏开发技术宝典:OpenGLES2.0》适合Android程序员、游戏开发者及Android爱好者学习,也可以作为相关培训学校和大专院校相关专业的教学用书。
【目录】
第1章新一代的王者--Android概览

1.1智能手机市场现状

1.1.1五大智能手机操作系统

1.1.2智能手机市场的新星

1.2Android平台的特点及未来的趋势

1.2.1全新理念带来的体验风暴

1.2.2中国手机市场的主导性作用

1.2.3手机3D游戏和应用增长迅速

1.3如何搭建Android开发环境

1.3.1SDK的安装及环境配置

1.3.2Eclipse集成开发环境的搭建

1.3.3创建并启动模拟器

1.4HelloAndroid应用程序的开发

1.4.1第一个Android应用程序

1.4.2Android应用程序的项目结构

1.4.3Android应用程序的调试

1.4.4实际设备的联机调试

1.5Android应用程序运行的机制

1.5.1应用程序的系统架构

1.5.2应用程序框架

1.5.3Android运行时

1.5.4系统库

1.5.5底层Linux内核

1.6本章小结

第2章游戏开发相关Android基础知识

2.1游戏中的音效

2.1.1游戏中的即时音效

2.1.2即时音效的一个案例

2.1.3背景音乐播放技术

2.1.4简易音乐播放器的实现

2.2简单数据的存储--Preferences

2.2.1Preferences简介

2.2.2Preferences实现访问时间的记录

2.3手机自带数据库--SQLite

2.3.1初识SQLite

2.3.2SQLite数据库的基本操作

2.3.3SQLite数据库的简单案例

2.3.4使用ContentProvider组件共享数据

2.3.5使用ContentResolver获取分享数据

2.4文件I/O

2.4.1访问SD卡中的文件

2.4.2访问手机中的文件夹

2.4.3读取assets文件夹下的内容

2.52D动画的开发

2.5.1SurfaceView用法简介

2.5.2使用SurfaceView实现2D动画

2.6Socket网络通信

2.6.1Socket开发基本知识

2.6.2服务器端

2.6.3客户端

2.7蓝牙通信

2.7.1蓝牙通信的基本知识

2.7.2聊天案例概览

2.7.3聊天案例的开发过程

2.8本章小结

第3章初识OpenGLES2.

3.1OpenGLES2.0概览

3.1.1OpenGLES2.0简介

3.1.2初识OpenGLES2.0应用程序

3.2着色器与渲染管线

3.2.1OpenGLES1.x的渲染管线

3.2.2OpenGLES2.0的渲染管线

3.2.3OpenGLES中立体物体的构建

3.3主流Android手机GPU大PK

3.3.1手机GPU四大家族对比

3.3.2主流GPU的性能参数比较

3.4本章小结

第4章着色语言ShadingLanguage

4.1着色语言概述

4.2着色语言基础

4.2.1数据类型概述

4.2.2数据类型的基本使用

4.2.3运算符

4.2.4类型转换

4.2.5限定符

4.2.6流程控制

4.2.7函数的声明与使用

4.2.8片元着色器中浮点变量精度的指定

4.2.9程序的基本结构

4.3特殊的内建变量

4.3.1顶点着色器中的内建变量

4.3.2片元着色器中的内建变量

4.4着色语言的内置函数

4.4.1角度转换与三角函数

4.4.2指数函数

4.4.3常见函数

4.4.4几何函数

4.4.5矩阵函数

4.4.6向量关系函数

4.4.7纹理采样函数

4.4.8微分函数

4.5本章小结

第5章投影及各种变换

5.1摄像机的设置

5.2两种投影方式

5.2.1正交投影

5.2.2透视投影

5.3各种变换

5.3.1基本变换的相关数学知识

5.3.2平移变换

5.3.3旋转变换

5.3.4缩放变换

5.3.5基本变换的实质

5.4绘制方式

5.4.1各种绘制方式概览

5.4.2点与线段绘制方式

5.4.3三角形条带与扇面绘制方式

5.4.4顶点法与索引法

5.5设置合理的视角

5.6卷绕和背面剪裁

5.6.1基本知识

5.6.2一个简单的案例

5.7本章小结

第6章光照

6.1曲面物体的构建

6.1.1球体构建的基本原理

6.2.2案例效果概览

6.2.3开发步骤

6.2基本光照效果

6.2.1光照的基本模型

6.2.2环境光

6.2.3散射光

6.2.4镜面光

6.2.5三种光照通道的合成

6.3定位光与定向光

6.4点法向量和面法向量

6.5光照的每顶点计算与每片元计算

6.6本章小结

第7章纹理映射

7.1初识纹理映射

7.1.1基本原理

7.1.2纹理映射的简单案例

7.2纹理拉伸

7.2.1两种拉伸方式概览

7.2.2不同拉伸方式的案例

7.3纹理采样

7.3.1纹理采样概述

7.3.2最近点采样

7.3.3线性纹理采样

7.3.4MIN与MAG采样

7.3.5不同纹理采样方式的案例

7.4mipmap纹理技术

7.5多重纹理与过程纹理

7.5.1案例概览

7.5.2将2D纹理映射到球面上的策略

7.5.3案例的场景结构

7.5.4开发过程

7.6本章小结

第8章3D基本形状的构建

8.1圆柱体

8.1.1顶点原始位置的生成

8.1.2案例的开发

8.2圆锥体

8.2.1顶点原始位置的生成

8.2.2案例的开发

8.3圆环体

8.3.1顶点原始位置的生成

8.3.2案例的开发

8.4螺旋管

8.4.1顶点原始位置的生成

8.4.2案例的开发

8.5几何球

8.5.1顶点原始位置的生成

8.5.2案例的开发

8.6足球碳分子模型的搭建

8.6.1搭建的基本原理

8.6.2案例的开发

8.7贝塞尔曲线及旋转面

8.7.1三维旋转曲面的生成

8.7.2贝塞尔曲线

8.7.3Bezier曲线生成工具

8.7.4印度古典建筑场景的开发

8.8本章小结

第9章3D模型加载

9.1obj模型文件概览

9.1.1obj文件的格式

9.1.2用3DMax设计3D模型

9.2加载obj文件

9.2.1加载仅有顶点坐标与面数据的obj文件

9.2.2加载后自动计算面法向量

9.2.3加载后自动计算平均法向量

9.2.4加载纹理坐标

9.3本章小结

第10章混合与雾

10.1混合技术

10.1.1混合基本知识

10.1.2源因子和目标因子

10.1.3简单混合效果案例

10.2地月系云层效果的实现

10.3雾

10.3.1雾的原理与优势

10.3.2雾的简单实现

10.4本章小结

第11章常用3D开发技巧

11.1标志板

11.1.1案例效果与基本原理

11.1.2开发步骤

11.2灰度图地形

11.2.1基本原理

11.2.2普通灰度图地形

11.2.3过程纹理地形

11.2.4MipMap地形

11.3天空盒与天空穹

11.3.1天空盒

11.3.2天空穹

11.3.3天空盒与天空穹的使用技巧

11.4镜像技术

11.4.1镜像基本原理

11.4.2基本效果案例

11.4.3升级效果案例

11.5动态文本输出

11.5.1案例效果与基本原理

11.5.2具体开发步骤

11.6非真实感绘制

11.6.1案例效果与基本原理

11.6.2具体开发步骤

11.7本章小结

第12章几种剪裁与测试

12.1剪裁测试

12.1.1基本原理与核心代码

12.1.2一个主次视角的简单案例

12.2Alpha测试

12.2.1Alpha测试基本原理

12.2.2一个椭圆窗口的案例

12.3模板测试

12.3.1基本原理

12.3.2一个简单的案例

12.4任意剪裁平面

12.4.1基本原理

12.4.2茶壶被任意平面剪裁的案例

12.5本章小结

第13章顶点着色器的妙用

13.1飘扬的旗帜

13.1.1基本原理

13.1.2开发步骤

13.2扭动的软糖

13.2.1基本原理

13.2.2开发步骤

13.3风吹椰林场景的开发

13.3.1椰子树随风摇摆的基本原理

13.3.2开发步骤

13.4展翅飞翔的雄鹰

13.4.1基本原理

13.4.2开发步骤

13.5二维扭曲

13.5.1基本原理

13.5.2开发步骤

13.6OpenGLES1.x与OpenGLES2.0实现方案的对比

13.7本章小结

第14章片元着色器的妙用

14.1程序纹理技术

14.1.1砖块着色器

14.1.2沙滩球着色器

14.2数字图像处理

14.2.1卷积的基本知识

14.2.2平滑过滤

14.2.3边缘检测

14.2.4锐化处理

14.2.5浮雕效果

14.2.6图像渐变

14.3分形着色器

14.3.1曼德布罗集简介

14.3.2曼德布罗集着色器的实现

14.3.3将曼德布罗集纹理应用到实际物体上

14.3.4茱莉亚集着色器的实现

14.4本章小结

第15章真实光学环境的模拟

15.1投影贴图

15.1.1案例效果与基本原理

15.1.2开发步骤

15.2反射环境模拟

15.2.1案例效果与基本原理

15.2.2开发步骤

15.3折射环境模拟

15.3.1案例效果与基本原理

15.3.2开发步骤

15.4色散效果的模拟

15.4.1案例效果与基本原理

15.4.2开发步骤

15.5菲涅尔效果的模拟

15.5.1案例效果与基本原理

15.5.2开发步骤

15.6凹凸映射

15.6.1案例效果与基本原理

15.6.2法向量纹理图的生成

15.6.3案例的开发

15.7平面阴影

15.7.1案例效果与基本原理

15.7.2开发步骤

15.8阴影映射

15.8.1案例效果与基本原理

15.8.2距离纹理图的生成

15.8.3阴影场景的绘制

15.9光线跟踪

15.9.1案例效果与基本原理

15.9.2开发步骤

15.10本章小结

第16章游戏开发中的物理学

16.1碰撞检测基本技术

16.1.1AABB包围盒的基本原理

16.1.2AABB包围盒的计算

16.1.3AABB包围盒的碰撞检测

16.1.4一个AABB包围盒的案例

16.1.5旋转后的AABB包围盒

16.1.6AABB包围盒的使用要点

16.1.7OBB包围盒

16.2穿透效应

16.2.1案例的运行效果与基本原理

16.2.2具体开发步骤

16.3粒子系统

16.3.1案例运行效果与基本原理

16.3.2CPU版案例的开发

16.3.3GPU版案例开发步骤

16.4弹簧质点模型

16.4.1案例运行效果与基本原理

16.4.2具体开发步骤

16.5本章小结

第17章游戏的心脏--物理引擎

17.1物理引擎很重要

17.1.1什么是物理引擎

17.1.2常见的物理引擎

17.2JBullet物理引擎

17.2.1基本的物理学概念

17.2.2JBullet中常用类的介绍

17.3箱子相互碰撞的案例

17.3.1案例运行效果及准备工作

17.3.2案例的基本框架结构

17.3.3常量类--Constant

17.3.43D场景渲染类--MySurfaceView

17.3.5水平地面--TexFloor类

17.3.6箱子--TexCube类

17.4复合碰撞形状的使用

17.4.1案例运行效果

17.4.2立方体圆柱复合形状--CubeCylinder类

17.5凹凸地形的案例

17.5.1案例运行效果

17.5.2地形类--LandForm

17.6任意形状物体的碰撞

17.6.1案例运行效果

17.6.2加载物体类--LoadedObjectVertexNormal

17.6.3加载物体刚体类--LoadRigidBody

17.7铰链关节

17.7.1铰链关节的基本知识

17.7.2案例的运行效果

17.7.3铰链关节旋转角速度的计算

17.7.43D界面渲染类--MySurfaceView

17.8滑动关节

17.8.1滑动关节的基本知识

17.8.2案例效果图

17.8.33D界面渲染类--MySurfaceView

17.9六自由度关节

17.9.1六自由度关节的基本知识

17.9.2案例的运行效果

17.9.3人偶类--Doll

17.9.4拾取时采用的点对点关节

17.10本章小结

第18章传感器应用的开发

18.1基本的开发流程

18.2加速度传感器

18.2.1加速度传感器简介

18.2.2案例的开发

18.3磁场传感器

18.3.1磁场传感器简介

18.3.2案例的开发

18.4光传感器

18.4.1光传感器简介

18.4.2案例的开发

18.5温度传感器

18.5.1温度传感器简介

18.5.2案例的开发

18.6接近传感器

18.6.1接近传感器简介

18.6.2案例的开发

18.7姿态传感器

18.7.1姿态传感器简介

18.7.2案例的开发

18.8本章小结

第19章游戏开发小贴士

19.13D拾取技术

19.1.1案例效果与基本原理

19.1.2开发步骤

19.2多点触控

19.2.1案例效果与基本原理

19.2.2开发步骤

19.3多键监听

19.3.1案例效果与基本原理

19.3.2开发步骤

19.4本章小结

第20章BN赛艇

20.1游戏背景及功能概述

20.1.1背景概述

20.1.2功能介绍

20.2游戏的策划及准备工作

20.2.1游戏的策划

20.2.2Android平台下游戏的准备工作

20.3游戏的架构

20.3.1各个类简要介绍

20.3.2游戏框架简介

20.4主控制类MyActivity

20.52D界面相关类

20.5.1欢迎界面类WelcomeView

20.5.22D界面父类MySFView

20.5.3主菜单类MenuView

20.5.42D界面绘制类ViewForDraw

20.5.5数据库工具类DBUtil

20.5.6Android系统版本对话框AndroidVersionDialog

20.6选船界面相关类

20.6.1着色器管理类ShaderManager

20.6.2围墙类ColorLightRect

20.6.3选船房间类HouseForDraw

20.6.4展台类DisplayStation

20.6.5赛艇类Boat

20.6.6选船界面XCSurfaceView

20.7游戏界面相关类

20.7.1进度条类Process

20.7.23D物体父类BNDrawer

20.7.33D物体控制类TDObjectForControl

20.7.4赛艇类Boat

20.7.5可碰撞物体父类KZBJDrawer

20.7.6可碰撞物体控制类KZBJForControl

20.7.7赛艇与可碰撞物体检测碰撞线程ThreadColl

20.7.8可吃物体父类SpeedForEat

20.7.9可吃物体控制类SpeedForControl

20.7.10晶体旋转线程RotateThread

20.7.11赛艇与晶体碰撞检测线程ThreadForEat

20.7.12比较两灌木距离摄像机距离类MyComparable

20.7.13单个灌木类SingleShrub

20.7.14灌木控制类ShrubForControl

20.7.15赛艇赛道类RaceTrack

20.7.16赛艇与桥碰撞检测类PZZ

20.7.17赛艇运动路线工具类PathUtil

20.7.18尾浪类WeiLang

20.7.19水面类Water

20.7.20游戏界面类MyGLSurfaceView

20.7.21运动监听线程KeyThread

20.8该游戏中的着色器

20.9游戏的优化与改进

第21章火力篮球

21.1游戏背景及功能概述

21.1.1背景概述

21.1.2功能介绍

21.2游戏的策划及准备工作

21.2.1游戏的策划

21.2.2Android平台下游戏开发的准备工作

21.3游戏的架构

21.3.1各个类简要介绍

21.3.2游戏框架简介

21.4公共类BasketBall_Shot_Activity

21.5辅助界面相关类

21.5.1主菜单界面CaiDanView类

21.5.2设置界面ShengyinKGJiemian类

21.5.3关于界面GuanYuView类

21.5.4记录界面JiLuView类

21.5.5数据库相关类SQLiteUtil

21.6游戏界面相关类

21.6.1游戏界面绘制类GLGameView

21.6.2着色器程序管理器类ShaderManager

21.6.3添加刚体进物理世界类TianjiaBody

21.6.4添加胶囊刚体进物理世界类JiaoNangTianjiaBody

21.6.5篮球控制类BasketBallForDraw

21.6.6纹理矩形绘制类WenLiJuXing

21.7游戏中着色器的开发

21.7.1纹理的着色器

21.7.2光照着色器

21.7.3影子着色器

21.7.4仪表盘背景着色器

21.7.5篮网着色器

21.8游戏的优化与改进

第22章夜鹰行动

22.1游戏背景及功能概述

22.1.1背景概述

22.1.2功能介绍

22.2游戏的策划及准备工作

22.2.1游戏的策划

22.2.2Android平台下游戏开发的准备工作

22.3游戏的架构

22.3.1各个类的简要介绍

22.3.2游戏框架简介

22.4公共类Aircraft_Activity

22.5游戏相关类

22.5.1游戏界面绘制类GLGameView

22.5.2游戏线程类KeyThread

22.5.3子弹类BulletForControl

22.5.4坦克类TanKe

22.5.5山地绘制类LandForm

22.5.6颜色圆面类CircleForDraw

22.5.7星空类SkyNight

22.5.8爆炸效果绘制类DrawBomb

22.5.9数字绘制类NumberForDraw

22.6该游戏中的着色器

22.6.1加载界面着色器

22.6.2地形着色器

22.6.3按钮着色器

22.6.4星空着色器

22.6.5生命值矩形着色器

22.6.6颜色圆面着色器

22.7游戏的优化与改进
点击展开 点击收起

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP