第1章 无限欢乐的游戏世界 1
1.1游戏的意义与内涵 1
1.1.1游戏的组成要素 1
1.1.2认识游戏平台 2
1.2游戏设计初体验 4
1.2.1建立游戏主题 4
1.2.2游戏系统的基本设定 6
1.2.3游戏系统的流程控制技巧 6
1.2.4游戏制作的完整流程 7
1.2.5常见游戏类型介绍 9
1.3漫谈游戏开发环境与程序设计 10
1.3.1使用Java语言开发游戏 11
1.3.2 Java的执行平台 12
1.3.3 Java的执行速度 14
1.3.4 Java的属性与功能 14
第2章 Java快速学习 16
2.1开发环境的安装与设定 16
2.1.1 J2SDK的下载与安装 16
2.1.2 API说明文件 17
2.1.3简单的应用程序 18
2.2 Java面向对象程序设计 20
2.2.1面向对象的基本概念 20
2.2.2对象 22
2.3 Java的类语法 24
2.3.1定义类(Class) 24
2.3.2包 26
2.3.3类继承 28
2.3.4类属性成员 29
2.3.5类方法成员 32
2.3.6深入类 35
2.3.7接口 42
第3章 Applet与基础绘图 45
3.1认识Applet 45
3.1.1 Applet类 45
3.1.2 Applet程序坐标与参数传递 46
3.1.3 Applet程序的生命周期 47
3.2基础绘图 49
3.2.1使用paint()方法 50
3.2.2使用Graphics类绘制字符串 52
3.2.3 Graphics类的其他绘图方法 58
3.2.4图形与图像的“深度” 62
3.3.1图像类型的支持 65
3.3绘制图像 65
3.3.2取得图像及绘制 66
3.3.3图像追踪 69
3.3.4 页面切换 74
3.3.5制作透明背景 77
第4章 动画的制作 80
4.1动画的原理 80
4.1.1视觉暂留 80
4.1.2设定合理的FPS 81
4.2.1动画循环 82
4.1.3动画的类型 82
4.2图像的运动 82
4.2.2使用线程 86
4.2.3消除动画的闪烁 90
4.2.4使用合理的FPS 97
4.2.5改善动画播放效果 99
4.3动画的简单实例 106
4.3.1游戏开头画面 106
4.3.2制作电子小时钟 113
5.1.1事件处理机制 119
第5章 交互与声音 119
5.1如何和玩家交互 119
5.1.2如何处理事件 122
5.2事件的实例应用 127
5.2.1鼠标事件处理 127
5.2.2键盘事件处理 135
5.3声音的使用 140
5.3.1Java可使用的声音文件 140
5.3.2下载声音文件 140
5.3.3使用声音文件 141
6.1.1角色与动画 145
第6章 游戏动画高级制作 145
6.1游戏动画 145
6.1.2角色碰撞侦测 146
6.1.3碰撞实例 148
6.1.4定义角色父类 154
6.1.5角色动画与帧动画结合 156
6.1.6贴图技巧 164
6.2游戏范例——“棒打猪头” 169
7.1.1认识AWT组件 180
7.1使用AWT组件 180
第7章 强化游戏界面 180
7.1.2建立AWT组件实例 181
7.1.3版面配置 183
7.1.4结合Panel与LayoutManager 189
7.1.5处理AWT组件的事件 191
7.2网页游戏界面 196
7.2.1使用网页特效 197
7.2.2输入参数到Applet中 199
7.3实现范例——“棒打猪头”v2.0 200
8.1.1何谓人工智能 206
第8章 浅谈人工智能与2.5D游戏 206
8.1浅谈人工智能 206
8.1.2基本的人工智能概念 207
8.1.3游戏难度设定 216
8.2浅谈2.5D游戏 218
第9章 绘图算法 220
9.1粒子系统 220
9.1.1烟火粒子 220
9.1.2瀑布粒子 224
9.1.3烟粒子 228
9.1.4烟火树与喷泉 232
9.1.5雪花粒子 236
9.2立体绘图与旋转 239
9.2.1旋转立体五角锥 239
9.2.2具有远近感的立体对象 247
9.2.3其他立体坐标定位法 254
第10章 扫雷 261
10.1游戏规划 261
10.1.1游戏玩法及规则 262
10.1.2游戏设计分析 265
10.1.3游戏规划注意事项 266
10.2游戏流程 266
10.3技巧应用 267
10.3.1地雷区状态 267
10.3.2自动清除空白方格 268
10.3.3依方格标示自动翻开 270
10.4程序代码说明 271
第11章 迷宫 291
11.1游戏规划 291
11.2平面迷宫 291
11.2.2角色状态 292
11.2.1平面迷宫规划 292
11.2.3绘图与键盘事件的实现 293
11.2.4角色类 299
11.3立体迷宫 301
11.3.1地图拼接技巧 302
11.3.2定位地图坐标 305
11.3.3旋转立体坐标 307
11.3.4绘制障碍物 312
11.3.5处理图像深度 315
11.3.6随机产生地图 318
11.3.7完整2.5D迷宫 326
第12章 俄罗斯方块 334
12.1游戏规划 334
12.1.1游戏玩法及规则 334
12.1.2游戏设计分析 335
12.1.3注意事项 337
12.2游戏流程 338
12.3游戏技巧应用 338
12.3.1描述方块 339
12.3.3方块阻碍判断 341
12.3.2描述地图 341
12.3.4满行判断及删除 343
12.3.5控制方块自动下降 343
12.3.6预备方块区的上移效果 344
12.4游戏画面 345
12.5程序代码说明 346
第13章 项目研究——天涯若比邻 365
13.1 Java网络联机游戏 365
13.1.1 Java网络联机基础 365
13.1.2取得地址信息 366
13.1.3使用Socket联机 370
13.1.4使用ServerSocket联机 373
13.1.5制作一对一聊天室 375
13.1.6使用Applet制作联机程序 382
13.2多人联机 385
13.2.1多人联机类型 385
13.2.2多人聊天室 386
13.2.3服务器端程序剖析 388
13.2.4客户端程序剖析 399
附录A 游戏常见专有名词 404
附录B 游戏类型 412
附录C 游戏开发团队 426