《HTML5游戏编程核心技术与实战》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:向峰编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115327017
  • 页数:376 页
图书介绍:本书是一本全面介绍HTML5游戏编程方面的书籍,最新的HTML5技术结合游戏开发中常用的技巧和方法。本书的内容以HTML5的各种核心技术为基础,以大量丰富的完整的游戏实践开发案例向大家逐步讲解游戏开发中常用的各种技术和方法,对于游戏开发中涉及到的方方面面不再浅尝辄止,每一章节都会先讲解理论,最后有一个结合本章的理论知识完成一个小的游戏案例,让读者在HTML5游戏开发中如鱼得水。

第1章 游戏和HTML5初探 1

1.1网页游戏和HTML5 1

1.1.1网页游戏简介 1

1.1.2 HTML5简介 2

1.1.3 HTML5浏览器工具 4

1.1.4 HTML5开发工具 6

1.2 HTML5新特性初探 10

1.2.1 canvas元素 10

1.2.2 WebGL 12

1.2.3多媒体元素 13

1.2.4地理信息服务 14

1.2.5本地存储 15

1.2.6 Web sockets网络通信 16

1.2.7 Web Worker多线程 16

1.3小结 18

第2章 Canvas绘图 19

2.1基本知识 19

2.1.1创建canvas 20

2.1.2理解canvas坐标系 20

2.1.3获取canvas环境上下文 20

2.2图形API 21

2.2.1理解路径 21

2.2.2路径操作API 21

2.2.3绘制线条 22

2.2.4绘制矩形 23

2.2.5绘制圆弧 24

2.2.6绘制贝塞尔曲线 25

2.2.7线条属性 27

2.2.8线条颜色 28

2.2.9填充 28

2.2.10绘图状态 31

2.3图像API 32

2.3.1使用canvas绘制图像 32

2.3.2案例:放大镜 33

2.3.3案例:帧动画实现 34

2.3.4像素操作 36

2.3.5案例:转换灰度图 37

2.3.6案例:浮雕效果 39

2.4坐标变换 40

2.5绘制文字 42

2.6其他全局属性 44

2.7案例:《你画我猜》 45

2.7.1 UI界面设计 45

2.7.2定义画板对象 47

2.7.3初始化画笔选项区 47

2.7.4实现画板绘制 49

2.7.5整合代码 50

2.8小结 54

第3章 多媒体元素 55

3.1多媒体基本知识 55

3.1.1多媒体容器 55

3.1.2音视频解码器 56

3.2使用多媒体元素 57

3.2.1属性 58

3.2.2方法 59

3.2.3事件 60

3.2.4多媒体元素的限制 61

3.3案例:本地音乐播放器 61

3.3.1 UI界面设计 61

3.3.2创建Player对象 62

3.3.3添加本地文件 65

3.3.4实现播放进度条 66

3.3.5实现播放功能 67

3.3.6整合代码 68

3.4音频处理高级技巧 74

3.4.1 Web Audio API简介 74

3.4.2 Audio上下文 74

3.4.3加载和播放音频 76

3.4.4调节音频增益 77

3.4.5 混合多个音频 79

3.4.6 3D音效 82

3.4.7显示声音波形 83

3.5小结 86

第4章 制作2D游戏引擎 87

4.1理解游戏循环 87

4.2渲染引擎实现 88

4.2.1游戏引擎介绍 88

4.2.2建立游戏主循环框架 89

4.2.3控制游戏帧数 92

4.2.4游戏监听器 94

4.2.5创建游戏主窗口 97

4.2.6创建游戏精灵 104

4.2.7案例:屏幕弹球 112

4.2.8游戏精灵帧动画 115

4.2.9加载游戏资源 131

4.2.10游戏IO控制 142

4.3使用引擎构建游戏实例 144

4.4小结 152

第5章 网络通信基础 153

5.1网络协议基础 153

5.1.1通信协议 153

5.1.2 TCP/IP 153

5.1.3 HTTP 154

5.1.4套接字 156

5.2服务器端框架Node.js基础 157

5.2.1简介 157

5.2.2安装 158

5.2.3应用 158

5.2.4案例:简单的Web服务器 159

5.3 Web sockets基础 162

5.3.1简介 162

5.3.2应用 162

5.3.3案例:基于socket.io.js框架的聊天室 164

5.4小结 167

第6章 游戏常用算法 168

6.1追踪算法 168

6.2碰撞检测算法 172

6.2.1地图格子算法 172

6.2.2包围盒检测算法 173

6.2.3像素检测算法 183

6.3路径搜索算法 186

6.3.1随机迷宫算法 186

6.3.2 A*算法 189

6.4有限状态机 194

6.4.1原理 194

6.4.2实现 195

6.4.3案例:勤劳的蚂蚁 198

6.5粒子系统 206

6.6小结 210

第7章 Box2D引擎和物理游戏 211

7.1 Box2D基础 211

7.1.1安装Box2D库 211

7.1.2 Box2D中的基本概念 212

7.1.3创建Box2D物理世界 213

7.1.4添加物体到空间中 213

7.1.5渲染Box2D世界 215

7.2案例:结合渲染引擎渲染Box2D世界 217

7.2.1建立游戏框架,初始化Box2D世界 217

7.2.2更新Box2D物理世界 219

7.2.3创建Box2D物理精灵 219

7.3小结 222

第8章 使用CSS3开发游戏 223

8.1 CSS历史 223

8.2 CSS3选择器 224

8.2.1属性选择器 224

8.2.2结构伪类选择器 224

8.2.3 target伪类选择器 229

8.2.4 UI元素状态伪类选择器 230

8.2.5反向伪类选择器 230

8.2.6通用兄弟元素选择器 230

8.3 CSS3动画 231

8.3.1变形 231

8.3.2过渡 234

8.3.3案例:手风琴效果 235

8.3.4动画 237

8.3.5案例:沿路径移动的小球 239

8.3.6案例:地板上弹跳的小球 241

8.4案例:俄罗斯方块 244

8.4.1游戏规则和游戏UI 244

8.4.2分析游戏 246

8.4.3游戏实现 250

8.5小结 255

第9章 编程实战之太空战机 256

9.1创建主框架 256

9.2创建开始场景 259

9.3创建运行场景 261

9.3.1创建视差滚动背景 261

9.3.2创建射击类 264

9.3.3创建玩家类 268

9.3.4创建敌机类 273

9.3.5创建子弹类 275

9.3.6游戏配置实现 277

9.3.7运行场景实现 282

9.4创建结束场景 285

9.5小结 286

第10章 编程实战之《你画我猜》 287

10.1了解游戏逻辑 287

10.2 UI界面设计 288

10.3登录到服务器的实现 289

10.3.1创建简单的游戏服务器对象 290

10.3.2创建服务客户端对象 291

10.3.3创建客户端对象 293

10.4画板对象实现 295

10.5游戏数据定义 299

10.6显示所有玩家 301

10.7发送文本消息 303

10.8游戏逻辑实现 304

10.9最终实现 305

10.9.1主页面最终实现 305

10.9.2客户端最终实现 307

10.9.3画板最终实现 312

10.9.4游戏服务器最终实现 315

10.9.5游戏配置最终实现 319

10.9.6服务客户端最终实现 320

10.10小结 322

第11章 编程实战之《疯狂的小鸟》 323

11.1建立游戏主界面 323

11.2创建B2Sprite类 328

11.3创建Bird类 330

11.3.1 Bird状态分析及实现 330

11.3.2绘制Bird飞行轨迹 334

11.3.3 Box2D中的碰撞检测 336

11.3.4 Bird碰撞效果处理 338

11.3.5 Bird类的实现 339

11.4 Pig类的实现 343

11.5 Block类的实现 345

11.6 TGamne类的实现 347

11.7小结 352

附录A 游戏的历史 353

附录B 游戏类型 373