ActionScript 3.0游戏设计基础

出版时间:2013-5  出版社:电子工业出版社  作者:斯白  译者:大漠穷秋  
Tag标签:无  

内容概要

《ActionScript 3.0游戏设计基础(第2版)》涵盖了Flash游戏设计中的所有基础主题,包括游戏图形的制作、AS3.0语法基础、事件机制、碰撞检测、物理模拟、滚屏系统、AI(人工智能)基础,以及嵌入游戏音效。对于每一章的内容,在《ActionScript 3.0游戏设计基础(第2版)》的随书源代码中都提供了完整的代码和可运行的示例。读者可以跟随作者的思路,从最简单的游戏开始循序渐进地向前推进,最终构建出比较大型的Flash游戏。

作者简介

作者:(加拿大)斯白(Rex van der Spuy) 译者:大漠穷秋  斯白(Spuy R.V.D.),是一名自由职业者、交互媒体设计师,擅长Flash/AS3.0游戏设计、界面设计,以及ActionScript编程。他目前主要在加拿大、印度、南非这些地方游走。在不用编写视频游戏代码的时候,他会一边弹着锡塔尔琴,一边周游世界。

书籍目录

第1章编程基础:如何制作视频游戏1 1.1基本要求2 1.1.1一台计算机2 1.1.2图形设计软件2 1.1.3计算机编程软件3 1.1.4Adobe Flash Professional5 1.2你需要知道的东西6 1.3你不需要知道的东西6 1.4一切都与编程有关7 1.5编程?可是我的数学很烂!8 1.6我已经知道怎么编程了!8 1.6.1我能制作何种类型的游戏?9 1.6.2学习新术语9 1.6.3打好基础9 1.7使用Flash Builder10 1.7.1设置Flash Builder的工作环境11 1.8编写你的第一个程序19 1.9Action Script文件和.as扩展名19 1.10开始编程!21 1.10.1关于sprite的一点小魔法23 1.10.2不要忽略类!25 1.10.3使用构造方法27 1.10.4对齐代码29 1.11您的指令是什么?31 1.12为代码添加注释33 1.13运行你的程序并编译SWF文件35 1.13.1在你编译程序的时候发生了什么?37 1.14不能运行?39 1.14.1一些常见的错误信息42 1.14.2使用原始的源文件校对你的程序44 1.15关于Flash Builder的更多内容44 1.15.1编辑窗口的怪癖和特性44 1.15.2透视图48 1.16关于AS3.0和Flash Player的更多内容50 1.17命名约定52 1.18本章小结53 第2章制作游戏图形54 2.1创建游戏世界背景57 2.1.1在Photoshop中新建文件57 2.1.2绘制天空60 2.1.3绘制山峦71 2.1.4使用钢笔工具绘图73 2.1.5复制、修改以及排列图层83 2.1.6斜面和浮雕87 2.1.7使用矩形选择工具制作箱子91 2.2制作游戏角色96 2.2.1创建文件97 2.2.2绘制角色97 2.3制作按钮100 2.3.1新建一个文件100 2.3.2绘制按钮100 2.3.3使用文字工具103 2.3.4制作其他按钮104 2.3.5保存作品并制作PNG文件107 2.4检查你的作品108 2.5关于Photoshop的更多内容109 2.6本章小结110 第3章为对象编程111 3.1可我有点害怕编程!112 3.2加载并显示图片113 3.2.1新建AS3.0项目114 3.2.2理解配置文件116 3.2.3用元数据标签设置Flash Player117 3.2.4加载并显示background.png119 3.2.5这段代码的工作原理是什么?122 3.2.6变量123 3.2.7变量类型124 3.2.8创建空盒子125 3.2.9创建实例和对象126 3.2.10在舞台中显示图像129 3.2.11理解代码结构135 3.2.12在舞台上定位Sprite136 3.3为按钮编程144 3.3.1理解点标记145 3.3.2方法145 3.3.3使用方法调用146 3.3.4使用函数定义147 3.3.5使用基本方法149 3.3.6理解事件和事件监听器153 3.3.7让按钮运行起来161 3.4利用属性控制Sprite对象162 3.4.1上下移动164 3.5渐进移动166 3.5.1跟踪输出167 3.5.2使用递增和递减运算符168 3.5.3限制移动169 3.5.4变大和变小172 3.5.5消失!175 3.5.6旋转179 3.5.7更多的属性?181 3.6Sprite居中181 3.7代码小结186 3.8本章小结191 第4章决策192 4.1使用文本193 4.1.1新建项目193 4.1.2需要导入的类195 4.1.3创建Text Format和Text Field对象196 4.1.4设置文本格式197 4.1.5配置并显示输出文本199 4.1.6配置并显示输入文本框202 4.2编写简单的猜数字游戏205 4.2.1理解游戏的结构206 4.3学习关于变量的更多内容208 4.3.1监听按键211 4.4决策214 4.4.1显示游戏状态220 4.5使用后缀操作符改变同一个变量的值222 4.5.1字符串连接224 4.5.2嗨,为什么必须要用gameStatus变量呢?227 4.5.3uint型变量与int型变量227 4.5.4游戏的输赢228 4.5.5利用方法将程序模块化234 4.6润色235 4.6.1处理随机数236 4.6.2禁用回车键240 4.7制作漂亮的按钮242 4.7.1理解一些概念244 4.7.2加载图片并显示按钮245 4.7.3理解鼠标事件247 4.8将按钮添加到猜数字游戏中253 4.8.1在游戏结束时禁用按钮255 4.8.2管理复杂的代码262 4.9项目扩展262 4.9.1制作Playagain按钮263 4.9.2跟踪玩家的猜测264 4.9.3添加视觉效果264 4.9.4逆向思维264 4.10嵌入字体快速指南265 4.11本章小结267 第5章控制游戏角色268 5.1使用键盘控制玩家的游戏角色268 5.1.1键盘操控——错误的方式!269 5.1.2键盘操控——正确的方式!273 5.1.3按照指定的速度移动276 5.1.4使用新的keyDown Handler277 5.1.5使用keyUp Handler278 5.1.6使用enter Frame Handler279 5.1.7设置舞台边界281 5.1.8到达舞台边缘时禁止移动282 5.1.9屏幕环绕286 5.2嵌入图片288 5.3滚动290 5.3.1源码分析295 5.3.2更好地滚动298 5.3.3再好一点的滚动305 5.4更进一步308 5.4.1视差滚动309 5.5本章小结315 第6章碰撞检测316 使用hit TestObject进行基本的碰撞检测316 使用hit TestObject321 6.1触发状态变化323 6.1.1降低血量条327 6.1.2利用scaleX按照百分比缩放血量条330 6.1.3刷新得分331 6.1.4检测游戏是否结束336 6.1.5拿起和放下对象338 6.2关于hit TestObject的坏消息343 6.2.1使用边界框检测碰撞344 6.2.2学会和hit TestObject共处345 6.2.3创建子对象346 6.2.4高级碰撞检测策略350 6.3使用基于矢量的碰撞检测351 6.3.1防止对象重叠351 6.3.2编写Collision类357 6.3.3换个角度再看方法、实参和形参362 6.3.4Collision.block方法解析364 6.4本章小结371 第7章制作游戏372 7.1制作游戏图形373 7.1.1制作带纹理的箱子374 7.1.2制作地雷388 7.1.3制作游戏角色396 7.1.4设计游戏背景406 7.1.5制作GameOver图形407 7.2游戏编程409 7.2.1处理大量对象410 7.2.2到底什么是类?411 7.2.3TimeBombPanic应用类解416 7.2.4向游戏中添加对象423 7.2.5舞台边界425 7.2.6角色和箱子之间的碰撞426 7.2.7排雷426 7.2.8使用定时器427 7.2.9结束游戏431 7.3创建可滚动的游戏环境434 7.3.1让你的作品准备滚动435 7.3.2向游戏中添加对象436 7.3.3滚动游戏的边界438 7.4本章小结442 第8章制作更大型的游戏443 8.1理解游戏的结构444 8.1.1使用私有变量和方法447 8.2游戏编程449 8.2.1让Level One访问stage449 8.2.2确保Level One位于舞台上451 8.2.3Level One类453 8.2.4对游戏角色编程461 8.2.5对怪物编程468 8.2.6对星形武器编程475 8.2.7检测关卡是否结束484 8.2.8结束关卡485 8.2.9使用remove Child彻底删除对492 8.2.10通过派发事件在类之间进行通信494 8.2.11事件冒泡496 8.2.12结束第一关498 8.3在第二关中向四个方向发射星星498 8.4更多的怪物502 8.4.1在一个滚动式的游戏世界中移动对象502 8.4.2智能怪物519 8.4.3障碍物和寻路523 8.5关于游戏结构的更多内容523 8.6本章小结525 第9章物理引擎、循环、数组和音效526 9.1使用物理模拟自然运动527 9.1.1用来玩物理的游戏对象类528 9.1.2加速度529 9.1.3摩擦537 9.1.4弹跳539 9.1.5重力540 9.1.6跳跃543 9.2为游戏添加音效549 9.2.1在游戏中集成音效551 9.2.2循环播放音乐以及设置音量和声道552 9.3同时操纵大量对象557 9.3.1使用数组563 9.3.2创建很多箱子572 9.3.3在多个对象之间进行碰撞检测578 9.3.4案例学习586 9.4本章小结587 第10章对象和角色的高级控制589 10.1使用鼠标移动对象590 10.1.1让对象跟随鼠标移动590 10.1.2使用缓动的方式移动对象591 10.2案例研究:全角度发射子弹597 10.2.1创建游戏对象602 10.2.2让魔杖围绕仙女旋转603 10.2.3360°发射星星605 10.3高级玩家操控系统608 10.4敌军AI系统608 10.4.1避开玩家612 10.4.2旋转并向鼠标发射子弹613 10.4.3使用定时器发射子弹617 10.5案例研究:杀人蜂魔窟618 10.5.1Flash动画以及游戏发布626 10.6本章小结627

章节摘录

版权页:   插图:   8.4.3障碍物和寻路 这是你第一次进入游戏设计中的一个全新领域,叫做人工智能(通常称为AI)。这是很大的一个话题,如果你对游戏设计很感兴趣(你当然很感兴趣!),你一定会想更深入地去探索它。 你可能想进一步修改《怪物总动员》游戏,在其中加上一些障碍物形成一个迷宫,然后让怪物在其中移动。在前两章中使用过Collision.block方法,通过这个方法可以实现这一功能,当怪物撞到墙的时候,让它们改变移动方向即可。但是,这样你将被迫管理大量重复的代码。在第10章将会学习如何处理多个对象之间的碰撞,然后会使用一段非常高效且简洁的代码来解决这一问题。 你可能还想让你的怪物们能够在迷宫中智能地寻找移动路径,同时还要保证路径最短。为了实现这一点,你需要学习游戏设计中的网格碰撞检测法(tile—based);然后还要实现一段著名的代码,叫做A星寻路(A—Star)。在Advanced Game Design with Flash中可以找到以上功能的实现方法。 8.5关于游戏结构的更多内容 从现在开始,在本章中所使用的这种构建游戏的结构将会成为你将来所构建的所有游戏的模型。以下是关于这一结构工作原理的一个快速概览: 应用类将会加载所有的关卡类,当一个游戏关卡派发一个事件通知游戏自己已经结束的时候,应用类将会切换关卡。 游戏关卡类中会包含所有的游戏逻辑,并负责控制所有的游戏对象。 游戏中的每个对象都是通过自己独立的类创建的。游戏对象带有一些属性,这些属性包含了这些对象上的重要数据,游戏对象还会负责管理属性的状态变更。游戏对象中不会包含任何与游戏相关的特定逻辑。这样就可以在其他游戏中更加容易地复用相同的游戏对象类。 这种结构是一种著名的软件设计模式,叫做Model View Controller(MVC)模式,不过这里是该模式非常简化的版本。设计模式是一种结构,用来组织由多个类所构成的计算机代码,因为这样管理起来会更加容易。我们把这里实现的版本叫做LMVC模式(LazyModel ViewController)。这种模式对于理解多个类是如何协同工作的非常有好处,而且在很多游戏项目中也非常有用,尤其是当你还在学习编程的时候。

编辑推荐

《ActionScript 3.0游戏设计基础(第2版)》的内容由浅入深,知识丰富,非常适合读者自学或者作为高等学校的教材使用。

图书封面

图书标签Tags

评论、评分、阅读与下载


    ActionScript 3.0游戏设计基础 PDF格式下载


用户评论 (总计3条)

 
 

  •   很厚看起来很恐怖的一本书 但很喜欢作者口语化的讲解
  •   还以为会有光盘的,居然没有,先看看再说!
  •   很好的书。。非常喜欢。。好评给上
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7