《3D手机游戏开发实例教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:张鹏编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121076787
  • 页数:274 页
图书介绍:本书专门介绍如何用J2ME开发3D手机游戏,采用基础知识+范例开发流程图+源程序代码的方式,引导读者制作一款较大型的3D手机游戏。本书第1~8章为基础篇,结合实例介绍3D手机游戏的开发环境、编程基础、游戏背景等知识;第9~14章为提高篇,介绍游戏场景、粒子系统、碰撞检测等知识的应用方法;第15~18章为高级篇,介绍插帧动画、形体变换模型、骨骼蒙皮模型和游戏优化等高级知识。

第1章 手机游戏基础 1

1.1 手机游戏市场 1

1.1.1 手机游戏的市场状况 1

1.1.2 国内手机游戏的运营方式 1

1.2 开发团队与开发流程 2

1.2.1 手机游戏开发团队的组成 2

1.2.2 手机游戏的开发流程 3

1.3 J2ME基础 4

1.3.1 J2ME概述 4

1.3.2 J2ME技术中常用名词 4

1.3.3 J2ME的体系结构 4

1.3.4 J2ME与Java的关系 5

1.3.5 J2ME在手机游戏开发领域的优势 5

1.4 手机游戏开发技术的发展 6

1.5 3D游戏引擎与M3G 7

1.5.1 3D游戏引擎 7

1.5.2 M3G简介 7

第2章 开发环境的配置 8

2.1 J2ME开发环境 8

2.2 JDK的安装与配置 8

2.3 WTK的安装与配置 11

2.4 Eclipse的安装与配置 12

2.4.1 Eclipse的安装 12

2.4.2 EclipseME的安装 13

2.4.3 将WTK绑定到EclipseME 16

2.4.4 各手机厂商的SDK 17

第3章 程序框架与Eclipse操作基础 19

3.1 MIDlet框架 19

3.1.1 MIDlet框架说明 19

3.1.2 创建MIDlet框架 20

3.2 编写游戏程序框架 23

3.2.1 GameCanvas框架说明 23

3.2.2 GameCanvas框架的程序流程 26

3.2.3 制作3D游戏框架程序 26

3.3 Eclipse的操作说明 28

3.3.1 编译、运行与调试 29

3.3.2 打包生成产品 33

3.3.3 下载产品到手机 36

3.3.4 项目的导入 37

第4章 3D游戏编程基础 39

4.1 3D游戏编程的基本原理 39

4.2 摄影机的编程原理 39

4.2.1 透视投影 40

4.2.2 平行投影 41

4.2.3 自定义投影 41

4.3 光源的编程原理 42

4.3.1 光源的类型 42

4.3.2 聚光灯的照射范围与聚光度 43

4.3.3 颜色与亮度 44

4.3.4 光线强度的衰减 45

4.4 实物的编程原理 45

4.4.1 模型的顶点 46

4.4.2 模型的三角形面 49

4.4.3 模型的构建 50

4.4.4 模型的显示 51

4.5 实例制作——显示三棱锥 52

第5章 设置游戏背景 57

5.1 创建二维图像 57

5.2 设置游戏背景 59

5.2.1 设置背景 59

5.2.2 背景填充颜色 60

5.2.3 背景图像的裁剪区域 60

5.3 实例制作——星空背景下的三棱锥 62

第6章 三维变换 67

6.1 三维变换的数学基础 67

6.1.1 坐标系 67

6.1.2 顶点 68

6.1.3 向量与向量运算 68

6.1.4 矩阵与矩阵运算 70

6.1.5 三维变换的数学基础 70

6.2 M3G中的矩阵 72

6.2.1 创建矩阵 72

6.2.2 设置矩阵值 72

6.2.3 矩阵运算 73

6.3 节点控制 75

6.3.1 节点的三维变换 75

6.3.2 设置矩阵T 76

6.3.3 设置矩阵R 76

6.3.4 设置矩阵S 77

6.3.5 设置矩阵M 78

6.3.6 获取最终的变换结果 78

6.4 实例制作——旋转的三棱锥 79

第7章 外观控制——渲染模式与材质 81

7.1 外观控制类 81

7.2 多边形渲染模式 82

7.2.1 三角形正反面的设置 82

7.2.2 三角形剪切面的设置 82

7.2.3 三角形着色模式的设置 82

7.3 混合模式 83

7.3.1 深度偏移量 83

7.3.2 模型颜色的混合模式 84

7.4 材质 86

7.4.1 光照反射 86

7.4.2 模型的法线 87

7.4.3 材质控制 88

7.5 实例制作——透明的三棱锥 89

第8章 外观控制——纹理与雾化 95

8.1 纹理贴图 95

8.1.1 纹理坐标 95

8.1.2 设置纹理图 96

8.1.3 纹理的寻址方式 97

8.1.4 纹理的颜色混合模式 98

8.1.5 MipMap 99

8.1.6 纹理过滤 100

8.2 雾化效果 101

8.2.1 雾的颜色 101

8.2.2 雾的形成模式 101

8.2.3 雾的浓度系数 101

8.2.4 雾的范围 102

8.3 实例制作——具有纹理的三棱锥 102

第9章 制作游戏场景 107

9.1 立即模式与保留模式 107

9.2 三维场景的管理 107

9.2.1 设置活动摄影机 107

9.2.2 设置背景 108

9.2.3 设置场景中的实物 108

9.2.4 渲染World场景 109

9.3 三维场景的外部导入 110

9.4 实例制作——畅游三维世界 111

第10章 3D精灵与粒子系统 118

10.1 3D精灵 118

10.1.1 3D精灵简介 118

10.1.2 创建3D精灵 119

10.1.3 设置3D精灵的外观 119

10.1.4 设置3D精灵的裁剪区域 120

10.2 粒子系统 120

10.3 实例制作——在场景中显示喷泉 122

第11章 在三维世界中进行二维渲染 129

11.1 显示二维图像 129

11.2 2D精灵动画 130

11.2.1 2D精灵动画原理 130

11.2.2 播放2D精灵动画 131

11.2.3 Sprite类的其他方法 132

11.3 实例制作——显示游戏主角 134

第12章 碰撞检测 140

12.1 3D对象编号与碰撞检测范围 140

12.1.1 3D对象编号 140

12.1.2 碰撞检测范围 141

12.1.3 碰撞检测允许标志 141

12.2 碰撞检测与碰撞处理 141

12.2.1 碰撞检测的基本原理 142

12.2.2 碰撞检测的返回信息 143

12.2.3 不同实物的碰撞检测及碰撞处理 143

12.3 实例制作——让角色开火 144

第13章 音效播放 158

13.1 播放音效的方法 158

13.1.1 产生简单的音调 158

13.1.2 播放音效文件 159

13.2 常用音效格式及其制作软件 160

13.3 实例制作——增加射击音效 161

第14章 用户界面与文字处理 166

14.1 用户界面 166

14.1.1 标题界面与帮助界面 166

14.1.2 高级响应界面 167

14.2 文字处理 169

14.2.1 字体的控制 169

14.2.2 字符的编码 171

14.2.3 中文字符的判断 173

14.2.4 字符串的拼接 174

14.3 实例制作——增加用户界面 175

第15章 动画控制 187

15.1 关键帧序列 187

15.1.1 属性变化规律 187

15.1.2 关键帧序列 188

15.2 动画控制器 190

15.2.1 世界时间与序列时间 190

15.2.2 设置动画的播放位置 190

15.2.3 设置动画的播放速率 191

15.3 动画轨迹 191

15.3.1 动画轨迹的创建 191

15.3.2 设置实物的动画轨迹 192

15.3.3 播放动画 193

15.4 实例制作——绚丽的喷泉 193

第16章 特殊的模型 200

16.1 形体变换模型 200

16.1.1 形体变换原理 200

16.1.2 形体变换模型的创建 200

16.1.3 形体变换动画 201

16.2 骨骼蒙皮模型 201

16.2.1 骨骼蒙皮原理 202

16.2.2 骨骼蒙皮模型的创建 202

16.2.3 模型的骨骼设置 202

16.2.4 骨骼与皮肤相关联 203

16.3 实例制作——特殊模型的动画 204

第17章 特效的显示 216

17.1 拖影特效 216

17.1.1 拖影特效说明 216

17.1.2 拖影的变化规律 217

17.1.3 拖影的实现算法 218

17.1.4 实现算法的改进 220

17.2 光环特效 220

17.2.1 光环特效说明 220

17.2.2 3D游戏中的地形 221

17.2.3 光环的设计原理 222

17.3 精确坐标的设定 224

17.4 实例制作——增加特效的显示 225

第18章 3D手机游戏的优化 241

18.1 手机游戏优化的必要性 241

18.2 减少游戏占用的内存资源 241

18.2.1 修改浪费内存的代码 241

18.2.2 优化资源文件 243

18.2.3 使用代码混淆器优化内存 244

18.3 降低游戏对CPU的消耗 244

18.3.1 降低CPU消耗的通用方法 244

18.3.2 在3D游戏中降低CPU消耗的特殊方法 245

18.4 使用性能描述器进行优化 246

18.5 实例制作——浓雾中的三维世界 248

附录A M3G中类的继承关系图 255

附录B M3G中的API 258