出版社:机械工业出版社
年代:2014
定价:69.0
本书介绍了10种常见游戏类型的完整步骤,每章实现一种类型,并介绍了几种不同的、免费开源且易于使用的HTML5游戏引擎,其中包括一些JavaScript代码。具体内容包括:掌握基本的HTML5/JavaScript游戏开发工具集:浏览器、文本编辑器、终端、JavaScript控制台和游戏引擎;外部库和已证实模式的使用;如何管理IE、FireFox和Chrome浏览器之间的不同,以及10种类型的游戏的开发。
"目 录
译者序
前 言
导 言
第1章 问答游戏 1
1.1 第一步:出题 1
1.2 第二步:隐藏题目 8
1.3 第三步:重现题目 9
1.4 第四步:引入各种程序库 11
1.5 第五步:判断玩家所选答案是否正确 15
1.6 小结 19
第2章 文字冒险游戏 20
2.1 第一步:设计页面样式 21
2.2 第二步:实现页面跳转 25
2.3 第三步:添加道具栏及道具拖放功能 27
2.4 第四步:添加复杂的交互功能 35
2.5 第五步:添加历史记录导航功能 44
2.6 第六步:添加精彩的结局 46
2.7 小结 48
第3章 派对游戏 50
3.1 第一步:采用atom.js创建范例游戏 50
3.2 第二步:用canvas元素绘图 56
3.3 第三步:绘制鼠洞 58
3.4 第四步:绘制鼹鼠 60
3.5 第五步:将鼹鼠放入鼠洞 63
3.6 第六步:令鼹鼠从洞中钻出来 65
3.7 第七步:使玩家可通过敲击键盘来打鼹鼠 67
3.8 HTML5的标签并不尽如人意 70
3.9 小结 72
第4章 解谜游戏 73
4.1 第一步:用easel.js来渲染 74
4.2 第二步:渲染多个方块 78
4.3 第三步:创建成对出现的同色方块 81
4.4 第四步:配对并消除同色方块 83
4.5 第五步:隐藏与翻转图片 85
4.6 第六步:胜负判定 87
4.7 第七步:缓存与性能优化 91
4.8 第八步:将方块配对游戏改为字母认读游戏 93
4.9 小结 99
第5章 平台游戏 100
5.1 初识melon.js 100
5.2 第一步:创建瓦片地图 101
5.3 第二步:启动游戏 102
5.4 第三步:加入游戏角色 105
5.5 第四步:构建碰撞图层 107
5.6 第五步:行走与跳跃 108
5.7 第六步:标题画面 110
5.8 第七步:添加可供玩家收集的物品 112
5.9 第八步:添加敌人 113
5.10 第九步:添加能力提升道具 115
5.11 第十步:添加胜负判定机制并显示游戏信息 116
5.12 小结 118
第6章 格斗游戏 120
6.1 第一步:初识game.js 120
6.2 第二步:单独绘制精灵表中的各个精灵 123
6.3 第三步:处理两位玩家的输入 124
6.4 第四步:移动与变形 127
6.5 第五步:不要使两位玩家的输入互相阻塞 130
6.6 第六步:用位掩码记录按键状态 134
6.7 第七步:用掩码来检测碰撞 137
6.8 第八步:令两个游戏角色可以互相攻击对方 140
6.9 小结 145
第7章 飞行射击游戏 146
7.1 与渲染有关的准备知识 146
7.2 第一步:初识gameQuery 148
7.3 第二步:添加“敌机” 150
7.4 第三步:创建己方战机 153
7.5 第四步:处理玩家与敌人的碰撞 156
7.6 第五步:发射子弹 157
7.7 第六步:为玩家提供多种武器 159
7.8 小结 162
第8章 第一人称射击游戏 164
8.1 第一步:初识Jaws 164
8.2 第二步:创建二维地图 166
8.3 第三步:增添玩家 169
8.4 第四步:用光线投射技术绘制俯视图 173
8.5 第五步:用光线投射技术实现伪三维效果 177
8.6 第六步:为玩家配备照相机 180
8.7 第七步:装点游戏场景 184
8.8 第八步:添加同伴 188
8.9 小结 195
第9章 角色扮演游戏 197
9.1 第一步:初识enchant.js 197
9.2 第二步:创建地图 199
9.3 第三步:增添玩家 202
9.4 第四步:添加碰撞层 207
9.5 第五步:绘制状态画面 209
9.6 第六步:与NPC对话 212
9.7 第七步:绘制道具栏 215
9.8 第八步:开设道具店 218
9.9 第九步:实现战斗界面 226
9.10 第十步:通过HTML5的本地存储API来存储游戏进度 236
9.11 小结 238
第10章 即时战略游戏 240
10.1 服务器 240
10.2 第一步:配置Node 243
10.3 第二步:用socket.io实现即时通信 246
10.4 第三步:用crafty.js创建Isometric地图 249
10.5 第四步:绘制棋子 251
10.6 第五步:移动棋子 255
10.7 第六步:使玩家只能控制己方棋子,并将对方棋子上面的图案隐藏起来 258
10.8 第七步:实现碰撞检测,令玩家能吃掉对方棋子并看到其图案 264
10.9 小结 268
第11章 如何继续提升游戏开发水平 270
11.1 本书已经讲过的内容 270
11.2 接下来应该学习的内容 271
附录A JavaScript基础 273
附录B 代码质量控制 280
附录C 资源 285"
最近很多人开始关注网页游戏了。从游戏开发的角度来看,网页游戏这一形式具有诸多优点。
首先,传统的游戏开发形式大多受制于移植问题。开发好一款游戏之后,需要将其移植到多个操作系统中,而每个操作系统所适宜的开发环境又各有区别。网页游戏则不然:开发者把大部分精力集中在浏览器里即可。
此外,传统的开发形式一般需要大量的资金和人员支持,而网页游戏则特别适合中小团队及独立游戏开发者。从创意,到实现,再到测试并发布,这个周期可以缩得很短,而且过程也可以很灵活,发现新想法之后,立刻就能实验并看出效果来。
但是,初学者在入门时会遇到几个困难,其一是JavaScript语言与HTML5的特性太多,短期内很难将这些知识点全部掌握,而且有些特性与游戏开发的关系并不是很大。其二在于,许多读者原来未必具备丰富的开发经验,大家可能是从其他编程语言、其他开发平台,甚至其他行业转入网页游戏开发领域的。我们必须找到一套实用的开发流程,否则每次做游戏都要从头写起,这会耽误大量时间。
本书就相当顺畅地解决了这几个问题。作者Evan Burchard先生没有讲述高深的理论,而是直接选了10种常见的游戏类型,告诉我们如何通过适当的游戏引擎及工具,快速制作出这些游戏来。每章所选的范例游戏,其制作过程都分为好几个步骤,读者可在看完每个步骤之后及时总结当前制作进度。这些范例其实就是模板,只要根据每章最后的建议稍加修改,就能做出一款颇具个人特色的网页游戏了。
通过引擎来做游戏,既能缩短学习时间,又能降低编写代码的难度,而且只要学会一种引擎,就可以开发出许多款同类游戏了。由此可以想见,在学完全部10款引擎之后,你的开发思路一定会大为开阔。
(美) 迈克·吉格 (Mike Geig) , 著
(英) 索恩 (Thorn, A.) , 著
(日) 平山尚, 著
(美) 梅纳德 (Menard,M.) , 著
(美) 基思 (Keith,C.) , 著
刘阳, 编著
程明智, 王一夫, 编著
吕岚, 主编
(美) 曼徳 (Menard,M.) , (美) 瓦格斯特夫 (Wagstaff,B.) , 著