《J2ME手机游戏编程入门》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)莫尼逊(Monison,M.)著;李强译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2005
  • ISBN:7115135274
  • 页数:346 页
图书介绍:本书帮助读者掌握如何使用J2ME开始手机游戏开发。

目录 3

第一部分 手机游戏编程起步 3

第1章 发展中的游戏 3

1.1 移动游戏的本质 3

1.1.1 第一款手机游戏 4

1.1.2 手机游戏市场 5

1.1.3 手机游戏的文化 5

1.1.4 手机游戏的前沿 6

1.2.1 Java 2 Micro Edition(J2ME) 8

1.2 认识移动平台 8

1.2.2 Binary Runtime Environment for Wireless(BREW) 9

1.2.3 Symbian 9

1.2.4 Windows Mobile Smartphone 10

1.3 Java作为手机游戏平台 10

1.3.1 什么是Java 10

1.3.2 为什么选择Java 11

1.3.3 Java和手机编程 11

1.4 J2ME基础简介 13

1.4.1 Configuration和CLDC 13

1.4.2 Profile和MIDP 14

1.5 本章小结 16

1.6 实践练习 16

第2章 Java手机游戏开发基础 17

2.1 设计基础 17

2.1.1 基本思想的诞生 18

2.1.2 编制故事情节 18

2.1.3 确定游戏模式 19

2.2 J2ME游戏开发初步 19

2.3.1 使用KToolbar 22

2.3 J2ME Wireless Toolkit 22

2.3.2 MIDlet游戏项目 23

2.3.3 生成一个游戏MIDlet 24

2.3.4 测试一个游戏MIDlet 25

2.4 J2ME模拟器和实际设备 27

2.5 本章小结 27

2.6 实践练习 28

第3章 构建移动游戏Skeleton 29

3.1 J2ME API研究 29

3.1.1 CLDC API 30

3.1.2 MIDP API 31

3.2.1 MIDlet内部结构 32

3.2 理解MIDlet 32

3.2.2 MIDlet开发基础 34

3.3 创建Skeleton范例程序 34

3.3.1 编写程序代码 35

3.3.2 准备发布MIDlet 39

3.3.3 生成和测试最终产品 40

3.4 本章小结 41

3.5 游戏改进 42

第4章 手机游戏图形 45

4.1 手机图形基础 45

第二部分 手机游戏编程基础 45

4.1.1 理解图形坐标系 46

4.1.2 颜色的基本知识 47

4.2 在J2ME 中使用图形 48

4.2.1 绘制图形基元 49

4.2.2 绘制文本 51

4.2.3 绘制图像 53

4.3 构建Olympics实例程序 54

4.3.1 编写程序代码 55

4.3.2 测试最终产品 56

4.4.1 编写程序代码 57

4.4 构建Slideshow示例程序 57

4.4.2 测试最终产品 61

4.5 本章小结 62

4.6 游戏改进 62

第5章 使用精灵动画 63

5.1 理解动画 63

5.1.1 动画和帧速率 64

5.1.2 走向计算机动画 64

5.1.3 2D动画和3D动画 65

5.2.2 基于角色的动画 66

5.2.1 基于帧的动画 66

5.2 分析2D精灵动画 66

5.3 把精灵动画应用到手机游戏中 70

5.4 使用Layer和Sprite类 71

5.5 使用GameCanvas类实现平稳动画 73

5.6 构建UFO实例程序 74

5.6.1 编写程序代码 74

5.6.2 测试最终产品 80

5.7 本章小结 81

5.8 游戏改进 81

6.1 获取手机游戏输入 82

第6章 处理手机用户输入 82

6.2 使用GameCanvas类处理按键输入 84

6.3 再谈Sprite类 85

6.3.1 检测精灵冲突 85

6.3.2 使用基于帧的动画精灵 86

6.4 构建UFO 2实例 88

6.4.1 编写程序代码 88

12.3.5 绘制游戏屏幕 1 89

6.4.2 测试最终的产品 92

6.5 本章小结 93

6.6 游戏改进 93

第7章 Henway,向Frogger致意 94

7.1 Henway的概况 94

7.2 设计游戏 96

7.3 开发游戏 97

7.4 测试游戏 106

7.5 本章小结 108

7.6 游戏改进 108

第8章 使用乐音产生声音 109

8.1 声音和手机游戏 109

8.2 乐音式声音和音乐基础 111

8.3 了解一个手机的音频能力 112

8.4 在手机游戏中播放乐音 114

8.4.1 播放单个乐音 114

8.4.2 播放乐音序列 115

8.5 构建UFO 3实例程序 118

8.5.1 编写程序代码 118

8.5.2 测试最终的产品 122

8.6 本章小结 122

8.7 实践练习 123

第9章 播放数字化声音和音乐 124

9.1 数字化声音基础 124

9.2 认识声波声音 126

9.4 再谈Player接口 127

9.3 创建和编辑声波文件 127

9.5 在手机游戏中播放声波声音 129

9.5.1 从一个JAR文件播放声波 129

9.5.2 播放来自一个URL的声波 130

9.6 使用MIDI感受声音 131

9.7 在手机游戏中播放MIDI音乐 132

9.7.1 播放来自JAR文件的MIDI歌曲 132

9.7.2 播放来自URL 的 MIDI歌曲 133

9.8 构建Henway 2实例游戏 134

9.8.1 编写游戏代码 134

9.8.2 测试最终产品 137

9.10 实践练习 138

9.9 本章小结 138

第三部分 虚拟世界和手机游戏智能 141

第10章 创建平铺的游戏图层 141

10.1 什么是平铺图层 141

10.2 为平铺图层创建地图 143

10.2.1 使用Mappy地图编辑器 144

10.2.2 使用Tile Studio地图编辑器 147

10.2.3 为游戏格式化地图信息 148

10.3.1 创建一个平铺图层 149

10.3 使用TiledLayer类 149

10.3.2 移动和绘制一个平铺图层 150

10.4 构建Wanderer实例程序 151

10.4.1 编写游戏代码 151

10.4.2 测试最终产品 155

10.5 本章小结 156

10.6 实践练习 157

11.1 处理多个游戏图层 158

第11章 管理多个游戏图层 158

11.2 使用LayerManager类 159

11.3 实现平铺图层动画 161

11.3.1 构建Wanderer 2实例程序 162

11.3.2 设计平铺图层地图 163

11.3.3 编写游戏代码 166

11.3.4 测试最终产品 170

11.4 本章小结 171

11.5 游戏改进 172

12.1 High Seas的概况 173

第12章 High Seas:你是游戏中的海盗 173

12.2 设计游戏 174

12.2.1 组合水域地图 176

12.2.2 组合陆地地图 177

12.3 开发游戏 179

12.3.1 创建一个漂移精灵 179

12.3.2 声明成员变量 182

12.3.3 组合start()方法 182

12.3.4 组合update()方法 185

12.3.7 安全地放置精灵 190

12.3.6 开始一个新游戏 190

12.4 测试游戏 191

12.5 本章小结 192

12.6 游戏改进 193

第13章 教游戏思考 194

13.1 关于AI的基础知识 194

13.2 游戏AI的类型 196

13.2.1 漫游AI 197

13.2.2 行为AI 199

13.2.3 策略AI 200

13.3 设计AI策略 201

13.4 教会精灵思考 202

13.4.1 设计追逐精灵 202

13.4.2 编写追逐精灵代码 203

13.5 构建High Seas 2实例游戏 207

13.5.1 编写游戏代码 208

13.5.2 测试最终产品 209

13.6 本章小结 211

13.7 游戏改进 211

14.1 多玩家游戏基础 215

第四部分 利用无线网络 215

第14章 手机游戏网络基础 215

14.1.1 回合制游戏 216

14.1.2 基于事件的游戏 216

14.2 网络游戏的问题和解决方案 217

14.2.1 状态同步 218

14.2.2 输入同步 218

14.2.3 一种混合解决方案 218

14.3.2 数据报Socket 219

14.3.1 流Socket 219

14.3 使用Socket通过网络通信 219

14.4 网络编程和J2ME 220

14.4.1 创建数据报包 221

14.4.2 发送数据报包 222

14.4.3 接收数据报包 222

14.5 构建Lighthouse实例 223

14.5.1 设计客户机和服务器 224

14.5.2 编写程序代码 224

14.5.3 测试最终产品 233

14.7 实践练习 234

14.6 本章小结 234

第15章C onnect 4:为经典游戏实现无线网络 236

15.1 Connect 4概况 236

15.2 设计游戏 237

15.2.1 图形和用户界面 238

15.2.2 游戏逻辑 238

15.2.3 网络 239

15.3 开发游戏 239

15.3.1 Connect4客户机和服务器 240

15.3.2 Connect 4游戏画布 244

15.3.3 Connect 4游戏状态 250

15.4 测试游戏 255

15.5 本章小结 256

15.6 实践练习 257

第16章 调试和部署 258

16.1 游戏调试基础 258

16.1.1 单步执行代码 259

16.1.2 察看变量 259

16.2 游戏调试策略 260

16.2.1  bug预防 260

16.1.3 使用断点 260

16.2.2 bug检测 262

16.3 选择调试器 263

16.4 部署手机游戏 264

16.4.1 理解空中下载预配置 265

16.4.2 为你的游戏做好部署准备 266

16.4.3 更改Web服务器 268

16.5 使用KToolbar来测试OTA预配置 268

16.6 本章小结 270

16.7 实践练习 270

17.1 理解手机游戏优化 273

第五部分 优化你的游戏 273

第17章 优化Java手机游戏 273

17.1.1 优化可维护性 274

17.1.2 优化可移植性 275

17.1.3 优化大小 275

17.1.4 优化速度 276

17.2 一般的手机游戏优化技巧 276

17.2.1 减少内存使用 276

17.2.2 最小化网络数据 278

17.2.3 去除不必要的图形 278

17.3.1 不带调试信息地编译 279

17.3 Java代码优化技巧 279

17.3.2 去除不必要的赋值 280

17.3.3 去除常用子表达式 280

17.3.4 利用局部变量 280

17.3.5 扩展循环 281

17.3.6 代码紧缩和混淆 281

17.4 探查你的手机游戏代码 282

17.5 监视手机游戏内存使用 285

17.7 本章小结 287

17.6 用整体的观点看待手机游戏优化 287

17.8 游戏改进 288

第18章 SpaceOut:向SpaceInvaders致敬 289

18.1 Space Out的概况 289

18.2 设计游戏 290

18.3 开发游戏 293

18.3.1 创建一个移动的精灵 293

18.3.2 声明成员变量 296

18.3.3 组合start()方法 296

18.3.4 组合update()方法 298

18.3.5 绘制游戏屏幕 304

18.3.6 开始一个新的游戏 305

18.3.7 添加外星人、导弹和爆炸 306

18.4 测试游戏 309

18.5 本章小结 310

18.6 游戏改进 310

第19章 记录最高得分 312

19.1 记录你的成就的重要性 312

19.2 认识Java RMS 313

19.2.1 理解记录和记录存储 313

19.2.2 深入RecordStore类 314

19.3 准备要存储的最高得分数据 317

19.4 构建Space Out 2实例游戏 318

19.4.1 设计游戏增强版 318

19.4.2 编写游戏代码 319

19.4.3 测试最终产品 323

19.5 本章小结 324

19.6 实践练习 324

附录 329

附录A Java游戏API参考 329

A.1 GameCanvas类 329

A.1.3 方法 330

A.1.2 构造函数 330

A.1.1 成员常量 330

A.2 Layer类 331

A.3 Sprite类 332

A.3.1 成员常量 332

A.3.2 构造函数 332

A.3.3 方法 333

A.4.1 构造函数 334

A.4.2 方法 334

A.4 TiledLayer类 334

A.5 LayerManager类 335

A.5.1 构造函数 335

A.5.2 方法 335

附录B 手机游戏编程资源 337

B.1 Micro Dev Net 337

B.2 J2ME Gamer 337

B.3 J2ME.org 337

B.7 Gamasutra 338

B.6 GameDev.net 338

B.8 Game Developer Magazine 338

B.4 Nokia论坛手机游戏开发社区 338

B.5 Wireless Developer Network 338

B.9 Gamelan 339

B.10 JavaWorld 339

B.11 Java官方站点 339

附录C 为手机游戏创建图形 340

C.1 评估游戏图形 340

C.1.1 确定游戏屏幕大小 340

C.1.2 考虑目标观众 341

C.1.3 确定游戏环境和基调 341

C.2.1 Image Alchemy 342

C.1.4 保持图形风格 342

C.2 认识图形工具 342

C.2.2 Paint Shop Pro 343

C.2.3 Graphic Workshop 343

C.3 创建和编辑图形 343

C.3.1 艺术线条图形 344

C.3.2 3D渲染图形 344

C.3.3 扫描的照片和视频捕捉图形 345

C.3.4 背景图形和材质 345

C.3.5 动画图形 345

C.4 寻找图形 346