实战Flash游戏开发(第2版)
5推荐 收藏
5.7K阅读
图灵程序设计丛书

实战Flash游戏开发(第2版)

Christopher Griffith (作者) 李鑫 , 杨海玲 (译者)
终止销售
本书细致深入地阐述了Flash 游戏开发的完整过程,尤其针对Flash CS5 与ActionScript 3,展开介绍了如何充分调动各种元素,简化流程,高效创建有用代码,进而开发制作出高水准的Flash 游戏。新版增加了几章Flash 移动开发的内容,介绍如何将Flash 游戏部署到iPhone 和Android 设备上。
本书适用于Flash 游戏设计开发人员以及任何想做网络游戏的程序员。
纸质书
¥79.00

出版信息

  • 书  名实战Flash游戏开发(第2版)
  • 系列书名图灵程序设计丛书
  • 执行编辑关于本书的内容有任何问题,请联系 傅志红
  • 出版日期2012-05-10
  • 书  号978-7-115-27645-2
  • 定  价79.00 元
  • 页  数260
  • 开  本16开
  • 出版状态终止销售
  • 原书名Real-World Flash Game Development: How to Follow Best Practices and Keep Your Sanity Second Edition
  • 原书号978-0-2408-1768-2

同系列书

  • JavaScript高级程序设计(第4版)

    [美]马特·弗里斯比(Matt Frisbie)   李松峰   译

    本书是JavaScript经典图书的新版。第4版涵盖ECMAScript 2019,全面、深入地介绍了Java...

  • HTTP权威指南

    David Gourley   Brian Totty   Marjorie Sayer   Sailu Reddy   Anshu Aggarwal   陈涓   赵振平   译

    本书是HTTP及其相关核心Web技术方面的权威著作,主要介绍了Web应用程序是如何工作的,核心的因特网协议如何...

  • JavaScript高级程序设计(第3版)

    Nicholas C.Zakas   李松峰   曹力   译

    本书是JavaScript超级畅销书的新版。ECMAScript 5 和HTML5在标准之争中双双胜出,使大量...

  • 计算机科学的基础

    Al Aho   Jeff Ullman   傅尔也   译

    本书全面而详细地阐述了计算机科学的理论基础,从抽象概念的机械化到各种数据模型的建立,用算法、数据抽象等核心思想...

  • Java技术手册(第6版)

    Benjamin J Evans   David Flanagan   安道   译

    通过学习本书,你将能够: 掌握最新的语言细节,包括Java 8的变化 使用基本的Java句法学习面向对...

本书特色

Christopher Griffith
Blockdot公司高级游戏开发师,拥有近十年的Flash应用及游戏开发经验,客户包括乐高、微软、美国航空、百事等知名企业。

目录

目  录


第1章 计算机科学并不适合所有人 1

1.1 一些基础知识 1

1.2 常见游戏类型 1

1.2.1 冒险类游戏 1

1.2.2 动作类游戏 1

1.2.3 益智解谜类游戏 2

1.2.4 词汇类游戏 2

1.2.5 策略与模拟经营类游戏 3

1.2.6 角色扮演游戏 4

1.2.7 驾驶类游戏 4

1.2.8 桌面式和卡牌式游戏 4

1.3 常用开发术语 5

1.3.1 伪码 5

1.3.2 算法 5

1.3.3 过程式编程 5

1.3.4 面向对象编程 5

1.3.5 设计模式 6

1.3.6 类 6

1.3.7 Public、Protected、Private和Internal 7

1.4 游戏特有的开发术语 7

1.4.1 人工智能 7

1.4.2 游戏循环(或主循环) 7

1.4.3 游戏视角 8

1.4.4 卷动背景 8

1.4.5 区块式游戏 8

1.5 Flash程序开发术语 9

1.5.1 舞台 9

1.5.2 显示对象 9

1.5.3 事件和侦听器 9

1.5.4 包 9

1.5.5 创作时事件、编译时事件及运行时事件 10

1.6 醒一醒 10

第2章 最佳编程工具 11

2.1 倒叙几句 11

2.2 Flash的一些优点 12

2.2.1 玩家占有率 12

2.2.2 灵活性 12

2.2.3 上市速度 12

2.2.4 美观性 13

2.3 白璧微瑕 13

2.3.1 缺点:代码编辑器 13

2.3.2 解决方案:使用附加工具 14

2.3.3 缺点:性能及内存管理 14

2.3.4 解决方案:使用第三方解决方案或自己创建 15

2.3.5 缺点:内容调试 16

2.3.6 解决方案:使用跟踪输出与自定义工具 16

2.3.7 缺点:缺乏内建游戏库和工具 17

2.3.8 解决方案:自己开发工具或寻找开源工具 17

2.4 不要和Flash对抗 17

2.5 Flash所能创建的内容 18

2.5.1 动画与游戏 18

2.5.2 应用程序与游戏 18

2.5.3 网站与游戏 18

2.5.4 Flash与传统游戏开发 19

2.6 最佳创作工具 19

第3章 一份计划抵得上1000片阿司

匹林 20

3.1 步骤1 20

3.2 步骤2 20

3.3 步骤3 21

3.4 步骤4 23

3.5 步骤5 24

3.6 步骤6(可选) 26

第4章 //注释太棒了! 29

4.1 适当的提醒 29

4.2 部分1:类 29

4.2.1 包 30

4.2.2 类就像文件一样 30

4.2.3 构造函数 30

4.2.4 常量、变量与方法 31

4.2.5 getter与setter方法 32

4.2.6 类标识符 33

4.2.7 继承与多态 34

4.2.8 接口 36

4.2.9 将Flash中的资源与类链接起来 38

4.2.10 类与基类 39

4.2.11 使用没有类文件的导出元件 41

4.2.12 getDefinitionByName与Casting 41

4.3 部分2:事件 42

4.3.1 dispatchEvent方法 42

4.3.2 addEventListener方法、removeEventListener方法以及事件流程中的各阶段 43

4.3.3 事件的传播与取消 46

4.3.4 自定义事件 46

4.4 部分3:错误 47

4.4.1 try、catch、finally 48

4.4.2 抛出自定义错误 49

4.5 部分4:数据结构与列表 50

4.5.1 Object 50

4.5.2 数组 51

4.5.3 Vector 53

4.5.4 Dictionary 53

4.5.5 ByteArray 54

4.5.6 到底该使用哪种列表 54

4.5.7 自定义数据结构 55

4.6 部分5:让所有人都能读懂你的注释 55

4.7 部分6:Flash为什么会这么做 56

4.7.1 事件流程 56

4.7.2 帧脚本 57

4.7.3 使用多个SWF文件 59

4.7.4 内存垃圾回收 60

4.8 本章小结 62

第5章 最低要求与架构师所采用的方法 63

5.1 简单地进行封装——类与容器 63

5.2 将有关数值存储到变量与常量中 64

5.3 不要信任舞台 65

5.4 不要使用不理解或不适用的架构或设计模式 65

5.5 要把握好向别人展示自己作品的最佳时机 66

5.6 转换到架构 66

5.7 OOP概念 66

5.7.1 封装 67

5.7.2 继承 67

5.7.3 多态性 68

5.7.4 接口 68

5.8 游戏开发中的实用OOP技巧 69

5.9 单例模式:一种良好的文档模式 70

5.10 本章小结 72

第6章 管理资源与使用图像 73

6.1 一种更好的文件格式 73

6.2 小议组织库元件 74

6.3 使用图像 75

6.4 常用的光栅图像格式 76

6.4.1 压缩 79

6.4.2 平滑 80

6.4.3 解块 80

6.4.4 外部的图像编辑工具 80

6.5 本章小结 82

第7章 让它动起来:ActionScript动画 83

7.1 几个术语 83

7.1.1 缓动 83

7.1.2 序列 84

7.2 是否补间?这是个问题 84

7.3 由脚本驱动的简单射击游戏 85

7.3.1 Projectile类 85

7.3.2 SimpleShooter类 85

7.4 记忆力游戏:补间动画 88

7.4.1 MemoryCard类 88

7.4.2 Memory类 89

7.5 本章小结 93

第8章 如雷贯耳:如何使用音频 94

8.1 常用音频格式 94

8.2 常用导出设置 95

8.3 使用外部文件 97

8.4 声音编辑工具 98

8.5 编写音效脚本 98

8.5.1 理解与声音有关的类 99

8.5.2 SoundEngine类 99

8.5.3 使用SoundEngine类 111

8.5.4 SoundMixer类 114

第9章 重塑“视频游戏” 116

9.1 视频编解码器 116

9.2 外部视频应用:过场与菜单 116

9.3 CutsceneManager类 119

9.4 时间轴上的视频 125

9.4.1 文件尺寸 125

9.4.2 库:易于使用与杂乱无章 126

9.4.3 性能表现 126

9.4.4 自由的动态模糊 126

9.5 建立内部视频 126

9.6 本章小结 129

第10章 XML与动态内容 130

10.1 引入数据:理解URLLoader类 130

10.2 XML 130

10.3 E4X 131

10.4 纵横字谜 132

10.4.1 CrosswordTile类 135

10.4.2 CrosswordClue类 138

10.4.3 CrosswordPuzzle类 140

10.5 内容并非只有现成的:纵横字谜编辑器 150

10.6 数据传送 151

10.7 示例:XML与Flash Vars的应用对比 151

10.8 本章小结 153

第11章 就是一个词儿:数学 154

11.1 Math类 154

11.2 部分1:几何学及三角学 154

11.3 简要介绍一下弧度与Pi值 158

11.4 Flash中的3D 161

11.4.1 位置 162

11.4.2 旋转 162

11.5 透视投影 163

11.6 Simple TunnelShooter范例 164

11.6.1 基本机制 164

11.6.2 所需类文件 164

11.6.3 Tunnel类 165

11.7 部分2:物理学 179

11.7.1 标量 179

11.7.2 矢量 179

11.7.3 Vector3D类 179

11.7.4 位移 180

11.7.5 速度 180

11.7.6 加速度 180

11.7.7 摩擦力 180

11.7.8 惯性 180

11.7.9 物理仿真与假象 181

11.7.10 真实性与期望值 181

11.8 范例:顶视角的驱动引擎 181

11.8.1 Vehicle类 181

11.8.2 Time类 184

11.8.3 Game类 185

11.9 范例:顶视角且带有漂移效果的赛车游戏 189

11.10 本章小结 192

第12章 别碰我:碰撞检测技术 193

12.1 能力与需求 193

12.2 hitTestObject——最基本的检测方法 193

12.3 hitTestPoint——更先进的检测方法 194

12.4 半径/距离检测法——极适合圆形的检测方法 199

12.5 矩形边框检测法 201

12.5.1 新的Enemy类 201

12.5.2 SimpleShooterCollisions类所新增的内容 202

12.5.3 该方法的一些不足之处 204

12.6 像素级精确的碰撞侦测与物理仿真 205

12.7 这些办法都不灵?那就用鸡尾酒疗法 206

第13章 MixUp——简单的游戏引擎 207

13.1 主文档 209

13.2 MixUP类 209

13.3 Title类 212

13.4 RulesPanel类 212

13.5 Game类 213

13.6 接口 216

13.7 GameBoard类 218

13.8 SourceImageEmbedded类 225

13.9 GameHistory类与Results类 227

13.10 SourceImageCamera类 229

13.11 本章小结 232

第14章 技术大融合:制作平台游戏 233

14.1 平台类型游戏 233

14.2 数据流程 234

14.3 游戏流程与功能 234

14.3.1 游戏背景设定 235

14.3.2 关卡设计及墙壁的作用 235

14.3.3 出口 235

14.3.4 玩家角色 235

14.3.5 物品 236

14.3.6 敌人 236

14.4 关卡文件格式以及资源结构 237

14.4.1 关卡的XML文件 237

14.4.2 资源SWF文件 240

14.4.3 游戏所用类的概述 240

14.5 引擎类 241

14.5.1 ISprite接口 241

14.5.2 IPlayer接口 242

14.5.3 IEnemy接口 243

14.5.4 IItem接口 243

14.5.5 IPortal接口 244

14.6 IWall接口 244

14.6.1 PlatformerEvent类 245

14.6.2 PortalDestinations类与PortalRequirement类 245

14.6.3 PlatformerConfig类 246

14.6.4 GridReference类 247

14.7 CollisionGrid类 249

14.8 游戏实现类 267

14.9 资源类 269

14.9.1 Player类 269

14.9.2 Enemy类 271

14.9.3 Item类 272

14.9.4 Portal类与Wall类 273

14.9.5 游戏中的资源 275

14.10 本章小结 277

第15章 Marble Runner:我们的第一款手机游戏 278

15.1 部分1:开发iOS游戏的最佳实践 278

15.1.1 滤镜(包括由PixelBender所创建的滤镜) 279

15.1.2 矢量图形(及形状补间) 279

15.1.3 文本处理 280

15.1.4 补间动画 280

15.1.5 绘图API、遮罩以及混合模式 281

15.1.6 运行时加载的SWF文件 281

15.2 利用GPU 281

15.3 代码也很关键 282

15.3.1 声明类型 283

15.3.2 使用静态属性与函数 283

15.3.3 确定最终答案 283

15.3.4 放之四海而皆准的垃圾回收 284

15.3.5 避免使用极其庞大的架构和库 284

15.3.6 减少显示列表层级 285

15.3.7 无需用事件来处理函数所擅长之处 285

15.4 权衡:继承还是接口 286

15.5 程序实例 286

15.5.1 XFL文档 287

15.5.2 Space.as 287

15.5.3 Rock.as 288

15.5.4 文档类SpaceRocks.as 290

15.5.5 FrameRateProfiler类 292

15.6 部分2:Marble Runner 293

15.7 Accelerometer类 293

15.8 加速计数据是如何计算出来的 294

15.9 Marble Runner游戏 295

15.9.1 XFL文件 296

15.9.2 游戏所用到的类 296

15.9.3 LabyrinthEngine 297

15.9.4 LabyrinthLevel 303

15.9.5 IBall、IHazard、IWall 306

15.9.6 基本文档类 307

15.9.7 标题界面类 309

15.9.8 得分排行榜界面类 310

15.9.9 GameClip类 314

15.9.10 Marble类 317

15.9.11 HazardPit和
StandardWall类 320

15.9.12 Results类 321

15.10 游戏设计注意事项 323

15.10.1 关卡设计 323

15.10.2 风险与回报 323

15.11 有待改进之处 324

15.11.1 计分 324

15.11.2 可拾取物品 324

15.11.3 可卷动的关卡 324

第16章 桌上冰球:采用多点触摸的平板电脑多人游戏 325

16.1 主题三重奏 325

16.2 移动设备的多点触摸输入方式 326

16.3 有限状态机 326

16.4 利用Box2D来进行物理仿真 327

16.5 双人桌上冰球游戏 328

16.5.1 XFL文件 328

16.5.2 游戏所用类 329

16.5.3 Main.as 329

16.5.4 Title.as 331

16.5.5 Rules.as 331

16.5.6 GameTouchController.as 333

16.5.7 Game.as 336

16.5.8 AirHockeyEngine.as 345

16.5.9 准备创建 353

16.6 本章小结 353

第17章 找到就干掉:猎虫行动 354

17.1 bug 354

17.1.1 trace 354

17.1.2 Flash Tracer 356

17.1.3 调试器 357

17.2 性能与优化 358

17.2.1 FrameRateProfiler类 359

17.2.2 MemoryProfiler类 362

17.2.3 sampler包 366

17.3 本章小结 369

第18章 当心恶贼 370

18.1 恶意使用 370

18.1.1 关闭不再需要的事件侦听器 370

18.1.2 为所要接受的输入设置最低延时 371

18.1.3 一经发现恶意使用就将游戏关闭 371

18.2 数据保护 371

18.2.1 内存攻击 371

18.2.2 保护要发送与接收的数据 375

18.3 SWF文件保护 376

18.4 本章小结 377

第19章 移动开发介绍 378

19.1 移动设备:新的热点 378

19.2 新增API 379

19.3 开发流程:先A后I 379

19.3.1 编译 379

19.3.2 程序设置与设计 381

19.4 第一个iPhone程序 382

19.4.1 开发者证书 382

19.4.2 UDID 385

19.4.3 AppID 386

19.4.4 供给配置文件 387

19.4.5 DemoApp 388

19.4.6 XFL文件 388

19.4.7 文档类 389

19.5 仅是开端 394

19.6 改变设置 395

19.6.1 文档分辨率 395

19.6.2 发布设置 396

19.6.3 部署 398

19.7 本章小结 398

后记 Flash在游戏业中的前景 399

附录A 摄像头与麦克风 400

附录B 本地化 408

附录C JSFL——情人们的JavaScript 415

附录D 使用AMFPHP开发游戏 422





  • 第1版很好,第2版更给力了。
    2gua  发表于 2012-05-19 07:56:09
    推荐
  • 你好,我买了这本书,需要源码帮助学习,请问我怎么下载源码时总是下载的网页连接,而不是显示的压缩包。
    阳关猎人  发表于 2013-04-15 20:54:24
    推荐