《J2ME MIDP手机游戏开发实用教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:徐红勤,杨洪雪,杜辉编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302251781
  • 页数:297 页
图书介绍:本书以手机游戏设计为目标,将学习领域划分为八个学习情景。在任务的实现过程中学习J2ME程序设计的基本知识。

第1章 熟悉J2ME技术在Eclipse工作环境中的应用 1

1.1 学习情境描述 1

1.2 使用Eclipse搭建手机游戏的开发环境 1

1.2.1 单元任务总述 1

1.2.2 知识准备:了解Eclipse 2

1.2.3 任务一:搭建Eclipse集成开发环境 2

1.2.4 知识拓展:模拟器和开发包 5

1.2.5 任务二:下载WTK 2.5.2并将其嵌入到Eclipse工作环境中 6

1.3 开发第一个MIDlet应用程序 10

1.3.1 单元任务总述 10

1.3.2 知识准备:了解J2ME 10

1.3.3 任务三:新建MIDlet应用程序 12

1.3.4 任务四:运行MIDlet应用程序 16

1.3.5 延伸任务:关闭、删除、打开MIDlet工程 19

1.4 打包发布手机游戏应用程序 21

1.4.1 单元任务总述 21

1.4.2 任务五:打包和混淆手机游戏应用程序 22

1.4.3 知识拓展:应用程序描述文件和清单文件 23

1.5 将游戏下载到手机 24

1.5.1 单元任务总述 24

1.5.2 任务六:通过数据线或蓝牙适配器下载游戏到手机 25

1.5.3 知识拓展:OTA方式下载游戏 25

本章小结 26

课后实训 26

第2章 制作闪屏和菜单 28

2.1 学习情境描述 28

2.2 制作简单的闪屏和菜单 29

2.2.1 单元任务总述 29

2.2.2 知识准备:了解用户界面体系结构 29

2.2.3 任务一:利用Alert界面组件制作闪屏 30

2.2.4 任务二:利用List界面组件制作菜单 31

2.2.5 延伸任务:给游戏界面加入水平滚动字幕 33

2.2.6 知识拓展:了解TextBox界面组件和Form界面组件 34

2.3 制作文字菜单 36

2.3.1 单元任务总述 36

2.3.2 知识准备:认识Graphics绘图对象和Canvas画布 37

2.3.3 任务三:绘制背景图片 37

2.3.4 任务四:绘制菜单文字 41

2.3.5 任务五:突出显示当前菜单项并通过上、下方向键实现菜单项的选择 44

2.4 制作图片菜单 46

2.4.1 单元任务总述 46

2.4.2 任务六:绘制菜单图片 46

2.4.3 任务七:绘制矩形框,突出显示当前菜单项 47

2.4.4 延伸任务:设计制作个性化菜单 49

2.4.5 知识拓展:绘制基本图形 50

本章小结 51

课后实训 52

第3章 手机游戏的控制 55

3.1 学习情境描述 55

3.2 响应菜单命令 56

3.2.1 单元任务总述 56

3.2.2 知识准备:事件处理 56

3.2.3 任务一:使用Command按钮响应菜单命令 57

3.2.4 延伸任务:返回主菜单 60

3.2.5 任务二:使用图片或文字按钮响应菜单命令 61

3.3 使用线程控制游戏进程 63

3.3.1 单元任务总述 63

3.3.2 知识准备:了解线程 63

3.3.3 任务三:实现多闪屏 64

3.3.4 任务四:实现游戏时间的倒计时 68

3.3.5 任务五:控制游戏的开始、暂停、继续和重玩 71

3.3.6 知识拓展:了解MIDlet的生命周期 74

3.4 制作游戏加载进度条 75

3.4.1 单元任务总述 75

3.4.2 任务六:使用Gauge界面组件制作进度条 75

3.4.3 知识准备:了解对象池的概念 76

3.4.4 任务七:用填充矩形框的方式制作进度条 77

3.5 搭建手机游戏制作框架 80

3.5.1 单元任务总述 80

3.5.2 任务八:快速搭建手机游戏制作框架 80

3.5.3 延伸任务:任务重构,使用状态变量控制游戏进程 83

本章小结 89

课后实训 91

第4章 MIDP 2.0游戏开发 92

4.1 学习情境描述 93

4.2 游戏主角设计 93

4.2.1 单元任务总述 93

4.2.2 知识准备:了解GameCanvas类 93

4.2.3 任务一:控制主角飞机在屏幕上移动 93

4.2.4 任务二:飞机移动时,实现形状的改变 99

4.2.5 任务三:设计主角人物在屏幕上行走 102

4.2.6 延伸任务:控制主角人物,按键行走,释放站立 106

4.3 子弹设计 107

4.3.1 单元任务总述 107

4.3.2 任务四:使用Vector类设计子弹 108

4.3.3 任务五:使用自定义子弹(Bullet)类的方法设计子弹 111

4.3.4 延伸任务:实现散弹 113

4.4 非玩家控制的角色设计 116

4.4.1 单元任务总述 116

4.4.2 任务六:出现敌机(队列) 116

4.4.3 延伸任务:添加时间轴,安排游戏情节 122

4.4.4 任务七:实现主角子弹和敌机的碰撞检测 123

4.4.5 任务八:出现BOSS 128

4.5 游戏背景设计 132

4.5.1 单元任务总述 132

4.5.2 任务九:使用一个图块,“铺设”单一的游戏背景 132

4.5.3 任务十:使用合成图块,“铺设”丰富的游戏背景 134

4.5.4 任务十一:使用地图编辑器,设计大型地图 136

4.5.5 延伸任务:铺设多层地图 139

4.6 滚屏设计 142

4.6.1 单元任务总述 142

4.6.2 知识准备:了解层和层管理机制 142

4.6.3 任务十二:实现游戏屏幕的自动滚动 142

4.6.4 延伸任务:实现滚动背景下的飞行射击效果 145

4.6.5 任务十三:根据主角人物的位置,重置地图视角 146

本章小结 152

课后实训 156

第5章 音频与视频处理 158

5.1 学习情境描述 158

5.2 音效设计 159

5.2.1 单元任务总述 159

5.2.2 任务一:播放音效 159

5.2.3 任务二:实现音效的开关 163

5.2.4 任务三:控制音量、设置静音 165

5.2.5 任务四:实现菜单背景音乐和游戏背景音乐之间的切换 166

5.2.6 延伸任务:为游戏加入爆炸等提示短音 170

5.3 播放视频 171

5.3.1 单元任务总述 171

5.3.2 任务五:播放片头视频 172

5.3.3 任务六:响应播放事件 174

本章小结 175

课后实训 176

第6章 游戏进度的保存 178

6.1 学习情境描述 178

6.2 操作记录集 178

6.2.1 单元任务总述 178

6.2.2 知识准备:认识记录存储系统 179

6.2.3 任务一:保存游戏进度 180

6.2.4 任务二:读取游戏进度,继续游戏 185

6.3 保存最高分记录 187

6.3.1 单元任务总述 187

6.3.2 任务三:保存最高分 188

6.3.3 任务四:保存玩家姓名和最高分 192

6.4 实现排行榜 194

6.4.1 单元任务总述 194

6.4.2 任务五:显示排行榜 194

6.4.3 任务六:更新排行榜 199

6.4.4 知识拓展 201

本章小结 202

课后实训 203

第7章 手机游戏制作技巧的提升 205

7.1 学习情境描述 205

7.2 图片过渡效果的处理 205

7.2.1 单元任务总述 205

7.2.2 任务一:实现图片的“移入”效果 206

7.2.3 任务二:实现“渐显”效果 208

7.2.4 任务三:实现“百叶窗”效果 210

7.2.5 任务四:实现“块状”过渡效果 211

7.2.6 延伸任务:实现“淡入淡出”效果 212

7.3 手机游戏中常用的动画制作方法 214

7.3.1 单元任务总述 214

7.3.2 任务五:使用图像数组实现动画 215

7.3.3 任务六:利用setClip()和drawImage()方法实现动画 218

7.3.4 任务七:利用Sprite对象播放动画 221

7.4 手机游戏中的人工智能 224

7.4.1 单元任务总述 224

7.4.2 任务八:实现炮台子弹对飞机的跟踪射击 225

7.4.3 延伸任务:使用定时器Timer实现对炮台子弹的控制 230

7.5 使用Canvas对象的显示和隐藏事件 232

7.5.1 单元任务总述 232

7.5.2 知识准备:了解showNotify()和hideNotify()事件处理方法 232

7.5.3 任务九:来电暂停和恢复处理 232

7.5.4 延伸任务:实现文字的自动折行和滚动效果 233

7.6 设置手机游戏的收费点 237

7.6.1 单元任务总述 237

7.6.2 知识准备:了解使用WMA接收和发送短消息 237

7.6.3 任务十:实现手机游戏的收费功能 238

本章小结 242

课后实训 243

第8章 游戏实战——决战之巅 244

8.1 学习情境描述 244

8.2 游戏策划 244

8.2.1 任务一:策划游戏的定位和故事背景 244

8.2.2 任务二:设计游戏内容 245

8.2.3 任务三:设定游戏参数 245

8.2.4 任务四:设计游戏效果(草)图 247

8.3 游戏架构 250

8.3.1 任务五:设计游戏的总体架构和主流程图 250

8.3.2 任务六:确定游戏的类结构 250

8.4 游戏界面的设计和实现 252

8.4.1 任务七:设计游戏的主菜单 252

8.4.2 任务八:设计游戏的起始界面 258

8.4.3 任务九:设计游戏的交费和续费界面并实现收费功能 260

8.4.4 任务十:设计地图场景并实现滚屏 262

8.5 游戏对象的创建、移动和绘制 263

8.5.1 任务十一:创建、移动和绘制主角战机 264

8.5.2 任务十二:创建、移动和绘制主角战机的子弹 265

8.5.3 任务十三:创建、移动和绘制NPC 269

8.5.4 任务十四:创建、移动和绘制NPC子弹 271

8.5.5 任务十五:创建、移动和绘制炮台及其子弹 272

8.5.6 任务十六:创建、移动和绘制随机掉落的道具 275

8.6 游戏运行的逻辑设计和实现 277

8.6.1 任务十七:游戏对象间的碰撞处理 277

8.6.2 任务十八:爆炸处理 280

8.6.3 任务十九:“发大招儿”处理 282

8.6.4 任务二十:BOSS1相关处理 284

8.6.5 任务二十一:主角生命相关处理 287

本章小结 288

课后实训 289

附录 Java语言编程规范 293

参考文献 297