图书介绍
HTML5 2D游戏编程核心技术PDF|Epub|txt|kindle电子书版本网盘下载
- (美)戴维·吉尔里(David Geary)著 著
- 出版社: 北京:机械工业出版社
- ISBN:7111551294
- 出版时间:2016
- 标注页数:460页
- 文件大小:55MB
- 文件页数:481页
- 主题词:
PDF下载
下载说明
HTML5 2D游戏编程核心技术PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 概述1
1.1 Snai1Bait游戏3
1.2 HTML5游戏开发最佳实践8
1.2.1 窗口失去焦点时暂停游戏8
1.2.2 窗口重获焦点时实现倒计时功能9
1.2.3 使用CSS实现UI特效10
1.2.4 对游戏运行缓慢的状态做出检测和处理11
1.2.5 添加社交功能11
1.2.6 将所有游戏图像放在单独的sprite表单中11
1.2.7 在服务器中存储高分榜和实时游戏数据13
1.3 特别功能13
1.4 Snail Bait游戏中的HTML和CSS15
1.5 开始Snail Bait游戏编程21
1.6 本书中使用的JavaScript23
1.7 小结25
1.8 练习26
第2章 原始素材和开发环境27
2.1 使用开发者工具28
2.1.1 控制台29
2.1.2 Chrome Canary的帧速率计数器32
2.1.3 调试34
2.1.4 时间线35
2.1.5 Profiling39
2.2 获取资源40
2.2.1 图像40
2.2.2 图像处理41
2.2.3 音效和音乐41
2.2.4 动画42
2.3 使用CSS背景43
2.4 生成小图标45
2.5 缩短编码周期46
2.6 小结48
2.7 练习48
第3章 图形和动画49
3.1 使用HTML5 canvas元素绘制图形和图像51
3.1.1 绘制背景52
3.1.2 绘制跑步小人53
3.1.3 绘制平台53
3.2 实现平滑的HTML5动画55
3.2.1 requestAnimationFrame()方法57
3.2.2 requestAnimationFrame()的polyfill实现57
3.3 实现游戏主循环60
3.4 计算帧速率61
3.5 滚动游戏背景62
3.5.1 平移坐标系62
3.5.2 滚动Snail Bait游戏的背景65
3.6 制作基于时间的运动67
3.7 反转滚动方向67
3.8 绘制动画帧68
3.9 使用视差产生视深的假象68
3.10 小结71
3.11 练习71
第4章 游戏的基本架构72
4.1 在JavaScript对象中封装游戏函数73
4.1.1 SnailBait的构造函数74
4.1.2 SnailBait的原型75
4.2 理解JavaScript语言中挑剔的this指针77
4.3 处理键盘输入79
4.4 玩家按P键时暂停或者恢复游戏81
4.5 冻结游戏,确保它精确地在暂停的位置恢复82
4.6 在窗口失去焦点时暂停游戏83
4.7 使用动态的倒计时来恢复一个暂停的游戏84
4.7.1 向游戏玩家显示提示板(简短信息)85
4.7.2 Snail Bait的倒计时87
4.8 小结89
4.9 练习90
第5章 游戏加载动画91
5.1 定义SnailBait游戏的窗口93
5.2 使用CSS过渡让元素淡入、淡出96
5.2.1 让元素淡入97
5.2.2 让元素淡出98
5.2.3 snailbait-toast元素的CSS99
5.2.4 显示和隐藏提示板100
5.3 让拥有与CSS过渡属性Opacity关联的元素淡入、淡出103
5.4 实现加载动画105
5.5 显示游戏画面109
5.6 小结112
5.7 练习113
第6章 sprite对象114
6.1 sprite对象116
6.1.1 sprite对象的属性118
6.1.2 sprite对象的构造函数119
6.1.3 sprite对象的方法119
6.2 将sprite对象整合到游戏主循环中121
6.3 实现sprite对象的artist对象124
6.3.1 图形artist对象124
6.3.2 图像artist对象125
6.3.3 sprite图像表单artist对象125
6.3.4 定义sprite图像表单单元格128
6.4 创建和初始化游戏的sprite对象130
6.5 使用元数据定义sprite对象133
6.6 滚动sprite对象136
6.7 小结138
6.8 练习138
第7章 sprite对象行为140
7.1 行为基础142
7.2 跑步小人行为143
7.3 跑步小人的跑动行为146
7.4 轻量级行为148
7.5 游戏独立行为150
7.6 组合行为155
7.7 小结159
7.8 练习159
第8章 时间轴,第1部分:有限行为及线性运动160
8.1 实现一个初始的跳跃行为算法161
8.2 将处理跳跃行为的职责转交给跑步小人162
8.3 实现跳跃行为164
8.4 使用秒表记录动画时间165
8.5 重新定义跳跃行为168
8.6 实现线性运动170
8.6.1 上升阶段170
8.6.2 下降阶段171
8.7 暂停行为173
8.8 小结175
8.9 练习175
第9章 时间轴,第2部分:非线性运动176
9.1 理解时间及其衍生物177
9.2 使用动画计时器和缓变功能实现非线性跳跃177
9.3 实现动画计时器179
9.4 实现缓变功能181
9.5 微调缓变功能184
9.6 实现真实的跳动行为185
9.7 使行为随机化189
9.8 使用动画计时器和缓变功能实现非线性颜色改变190
9.9 小结193
9.10 练习193
第10章 时间轴,第3部分:时间系统194
10.1 Snail Bait游戏的时间系统195
10.2 创建和启动时间系统197
10.3 将时间系统整合进Snail Bait游戏中198
10.3.1 使用时间系统驱动游戏动画198
10.3.2 实现使用时间系统修改游戏时间流的函数199
10.3.3 在计算帧速率时分解时间比率199
10.3.4 使用时间系统暂停和恢复游戏200
10.4 重新定义秒表和动画计时器的当前时间202
10.5 实现时间系统206
10.6 小结208
10.7 练习208
第11章 碰撞检测209
11.1 碰撞检测过程210
11.2 碰撞检测技术211
11.3 Snail Bait游戏中的碰撞检测212
11.3.1 sprite对象的碰撞矩形212
11.3.2 跑步小人的碰撞行为214
11.4 为碰撞检测选择碰撞候选对象215
11.5 在跑步小人与其他sprite对象之间检测碰撞216
11.6 处理碰撞217
11.7 优化碰撞检测220
11.7.1 改善包围盒220
11.7.2 使用空间分割方法221
11.8 监测碰撞检测的运行性能222
11.9 编程实现碰撞检测的边界案例223
11.10 小结226
11.11 练习226
第12章 重力228
12.1 为跑步小人实现坠落行为228
12.2 实现重力230
12.2.1 跑步小人的坠落行为232
12.2.2 计算初始下降速度236
12.2.3 在跑步小人坠落过程中暂停游戏237
12.3 最终版的碰撞检测237
12.4 小结238
12.5 练习239
第13章 sprite动画和特殊效果240
13.1 实现sprite动画241
13.2 创建特效246
13.2.1 晃动游戏画面246
13.2.2 场景切换248
13.3 编排效果253
13.3.1 炸死蜜蜂254
13.3.2 引爆按钮256
13.4 小结258
13.5 练习258
第14章 声音和音乐259
14.1 创建声音和音乐文件261
14.2 加载音乐和音效262
14.3 设置声音和音乐控件263
14.4 播放音乐264
14.5 循环播放音乐265
14.6 播放音效267
14.6.1 创建sprite音频对象270
14.6.2 定义音效对象271
14.6.3 实现多声道播放音效272
14.7 打开和关闭声音播放279
14.8 小结280
14.9 练习280
第15章 移动设备281
15.1 在移动设备上运行Snail Bait游戏284
15.2 检测移动设备284
15.3 缩放游戏以适应移动设备286
15.3.1 HTML5 viewport元标签287
15.3.2 以编程方式调整游戏画面以适应移动设备屏幕291
15.4 修改游戏动画底部的控制说明295
15.5 修改欢迎界面295
15.5.1 实现欢迎提示296
15.5.2 实现移动设备中的控制说明301
15.5.3 实现移动设备版开始提示305
15.5.4 显示移动设备中的开始提示306
15.6 添加触控事件307
15.7 在移动设备中处理音频的方法310
15.8 在主屏幕上添加启动图标,并以全屏模式运行游戏312
15.9 小结313
15.10 练习313
第16章 粒子系统314
16.1 排烟孔粒子系统315
16.2 使用排烟孔粒子系统318
16.2.1 定义排烟孔粒子系统数据318
16.2.2 创建排烟孔粒子系统318
16.2.3 将排烟孔粒子系统存入Snail Bait游戏的sprite对象数组中319
16.2.4 在每个动画帧中滚动排烟孔粒子系统320
16.3 编程实现排烟孔粒子系统321
16.3.1 把排烟孔粒子系统伪装成sprite对象321
16.3.2 组合火焰粒子323
16.3.3 组合烟泡327
16.4 暂停排烟孔粒子系统337
16.5 小结338
16.6 练习338
第17章 用户界面339
17.1 记录玩家游戏成绩340
17.2 增加游戏生命指示器343
17.3 显示游戏字幕348
17.4 使用Tweet发布玩家游戏得分354
17.5 当游戏运行缓慢时通知游戏玩家357
17.5.1 监控帧速率361
17.5.2 编程实现运行缓慢通知的事件处理句柄363
17.6 编程实现通关动画364
17.7 小结368
17.8 练习368
第18章 开发者后门程序370
18.1 Snail Bait游戏的开发者后门372
18.2 开发者后门的HTML元素及CSS373
18.3 显示及隐藏开发者后门375
18.4 更新开发者后门的元素377
18.5 实现开发者后门的复选框378
18.5.1 显示及隐藏碰撞矩形380
18.5.2 启用或禁用运行缓慢通知382
18.5.3 显示或隐藏排烟孔粒子系统383
18.5.4 更新开发者后门的复选框383
18.6 实现开发者后门的滑动条384
18.6.1 为开发者后门的滑动条定义HTML元素及CSS386
18.6.2 在SnailBait游戏的Java-Script代码中访问滑动条的读数387
18.6.3 创建并初始化开发者后门的滑动条388
18.6.4 将运行缓慢的滑动条关联到游戏中389
18.6.5 将时间速率滑动条关联到游戏中389
18.6.6 将游戏关联到时间速率滑动条上390
18.6.7 在显示开发者后门之前更新滑动条391
18.7 实现开发者后门刻度尺392
18.7.1 创建并访问刻度尺的canvas元素393
18.7.2 淡入淡出刻度尺394
18.7.3 绘制刻度尺395
18.7.4 更新刻度尺396
18.7.5 拖动游戏画面397
18.8 小结401
18.9 练习401
第19章 服务器端开发:内部指标、高分记录及部署403
19.1 Nodejs及socket.io简介404
19.2 在Snail Bait游戏中引入socket.io406
19.3 创建一个简单的服务器407
19.4 在服务器端创建套接字407
19.5 启动服务器408
19.6 在客户端创建一个套接字并连接到服务器408
19.7 记录游戏内部指标409
19.8 管理高分记录412
19.8.1 实现高分记录的用户界面413
19.8.2 检索服务器中的高分记录415
19.8.3 在客户端显示高分记录418
19.8.4 监视姓名输入419
19.8.5 验证并将高分记录存储到服务器420
19.8.6 重新显示高分记录422
19.8.7 开始新游戏422
19.9 部署Snail Bait游戏423
19.10 将文件上传到服务器425
19.11 小结426
19.12 练习426
第20章 后记:Bodega Revenge游戏428
20.1 设计用户界面430
20.2 创建sprite表单433
20.3 实例化游戏433
20.4 实现sprite对象434
20.4.1 炮塔434
20.4.2 炮弹437
20.4.3 小鸟439
20.5 实现sprite对象的行为441
20.5.1 炮塔的行为442
20.5.2 炮弹的行为447
20.5.3 小鸟的行为450
20.6 绘制剩余炮弹指示器454
20.7 为移动设备实现触摸控制456
20.8 小结458
20.9 练习459