Flash游戏制作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Flash游戏制作
一,概述
Flash是美国著名的多媒体软件公司Macromedia开发的矢量图形编辑和交互式动画制作软件。
该软件的功能十分强大,在网页设计和多媒体制作等领域得到了广泛的应用,已经成为制作网络互动游戏的标准软件。
Flash从Flash 4.0到Flash Professional 8,随着Flash技术的发展,Flash的功能越来越强大,使得制作较为复杂的互动游戏成为可能。
由于Flash互动游戏能够满足网络媒体的传输需要,越来越多的传统游戏开发人员转为Flash用户,广大闪客为了兴趣爱好也来制作Flash游戏娱己娱人,同时,商家把Flash互动游戏作为新产品推广和营销的重要手段。
二,Flash设计游戏的优势与弱点
优势:
1.矢量图形绘制,放大不失真
2.文件量小,适于网络传输
3.跨平台、跨设备,具有良好的富媒体客户环境
4.日益强大的ActionScript?,交互性更好
5.丰富的媒体支持功能,使产品更美观
6.流式播放,下载速度快
7.图形界面,易学易用
弱点:
1.对于复杂图形,运算速度慢
2.位图、三维图像及视频播放能力弱
3.与硬件及操作系统沟通能力差
4.开发团队合作分工不方便
三、游戏的种类
凡是玩过PC游戏或者TV游戏的朋友一定非常清楚,游戏可以分成许多不同的种类,各个种类的游戏在制作过程中所需要的技术也都截然不同,所以在一开始构思游戏的时候,决定游戏的种类是最重要的一个工作,在flash可实现的游戏范围内,基本上可以将游戏分成以下几种类型:
动作类游戏(Actions)
凡是在游戏的过程中必须依靠玩家的反应来控制游戏中角色的游戏都可以被称做“动作类游戏”。
在目前的flash游戏中,这种游戏是最常见的一种,也是最受大家欢迎的一种,至于游戏的操作方法,即可以使用鼠标,也可以使用键盘。
此类游戏的典型代表是“著名的动作游戏”小小作品二号一过关斩将”和”碰碰拳打”,分别如图1和图2所示:
益智类游戏(Puzzle)
此类游戏也是Flash比较擅长的游戏,相对于动作游戏的快节奏,益智类游戏的特点就是玩起来速度慢,比较幽雅,主要来培养玩家在某方面的
智力和反应能力,此类游戏的代表非常多,比如牌类游戏,拼图类游戏,棋类游戏等等,总而言之,那种玩起来主要靠玩家动脑筋的游戏都可以被称为益智类游戏。
图3,图4,图5分别为牌类游戏,拼图类游戏,棋类游戏的典刑代表: 角色扮演类游戏(RPG)
所谓角色扮演类游戏就是由玩家扮演游戏中的主角,按照游戏中的剧情来进行游戏,游戏过程中会有一些解谜或者和敌人战斗的情节,这类游戏
在技术还不算难,但是因为游戏规模非常大,所以在制作上也会相当的复杂。
图6为一个典型的角色扮演类游戏:
射击类游戏(Shotting)
射击类游戏在flash游戏中,占有绝对的数L优势,因为这类游戏的内部机制大家都比较了解,平时接触的也较多,所以做起来可能稍微容易点,图7为1个典型的射击类游戏:
素材的收集
图形图象的准备
这里的图形一方面指flash中应用很广的矢量图,另一方面也指一些外部的位图文件,两者可以进行互补,这是游戏中最基本的素材。
虽然flash提供了丰富的绘图和造型的工具,如贝塞耳曲线工具,可以在flash中完成绝大多数的图形绘制工作,但是flash中只能绘制矢量图形,如果需要用到一些位图或者用flash很难绘制的图形时,就需要使用外部的素材了。
取得这些素材一般有下面几种方法:
1.自己动手制作:可以使用一些专业的图形设计软件来制作自己需要的
素材,例如Photoshop, Painter,Coreldraw等都是很不错的选择,另外
可能需要一些3D的造型,这时候象3DStudio Max, Poser, Moho和Bryce等都是很方便的工具,完全可以利用这些工具为flash 服务。
如图8
2.多媒体光盘:现在的多媒体光盘种类越来越丰富,盘上的各类资源也
愈来愈多,完全可以利用手上现有的各类光盘来寻找自己需要的素材,而且现在也有好多专门的素材光盘,素材数量非常丰富,完全可以满足我们的制作需要。
如图9
3.网络资源:在互联系网空前发展的今天,我们可以充分利用网络上大
量的免费资源来寻找我们需要的素材,现在网上有非常丰富的各类素材,包括图形,图象和声音等,我们完全可以足不出户就得到我们需要的素材。
音乐及音效
音乐在flash游戏,非是非常索要的一种元素,大家都希望自己的游戏能够有声有色,绚丽多彩,给游戏加入适当的音效,可以为整个游戏增色不少,前面的图形图象我们己经知道
如何去获取了,那么如何找到我们需要的音效呢,下面就是一些常用的
经验和技巧:
1.网上搜集
网上有很多精彩的音效提供下载,但是这种方法的搜索面积过大大,不好找重点,而且还要受网落速度的限制。
不过这里可以给大家一个小建议:最好找那么可以打包下载音效的网站,全部下载回来,然后自己整理和建立自己的本地音效库,这样在以后的制作中就可以很便捷的找到自己需要的音效。
2.音乐歌曲
就是从平常听的音乐里找音效,如果要找快节奏的鼓点最好多搜
集一些Disco的舞曲,风格最好是Techno, house。
这些风格的鼓点很强烈,慢一点的可以选Hip—Hop的说唱音乐。
好多韩国音乐和港台音乐的电子音效都很不错。
不能忽视的是一些动漫片的音乐,也有很多值得提取的部分。
3.故事片影碟。
这是最佳的音效来源,如今杜比音效己经很普及了,更为流行的是AC-
3解码的DVD音效,可以使用一些流行的播放软件例如超级解霸来提取影片中的音效。
4.游戏
这是我发现的一个最为捷径的音效来源,一般游戏安装后都会有专门的目录存放游戏中的音乐,比如游戏“生化危机”完全安装后,会有一个Sound文件夹,打开看看吧,里面存放了几百种不同的音效,而且都是循环音效,是不是很方便啊。
四、Flash游戏设计流程
1.制定游戏规则:
游戏的目标受众的定制决定了游戏的目的和难易程度。
大部分网络游戏分为益智消遣类和产品推广类,对于前者,游戏的定制可难可简,界面也可以根据游戏题材灵活设计;对于后者,游戏规则越简单越好,讲究趣味性,在游戏过程中使玩家接触品牌、了解产品功能,界面设计应风格清新、美观,以达到产品宣传和推广的目的。
游戏中的敌我角色设计是促使玩家感兴趣的重要方面。
通过对游戏主角的激励,使玩家觉得自己就是“英雄”,是“侠客”,可以经过努力增长才智、功力,战胜敌人和困难,拯救人类,带来祥和的生活。
对于敌人角色的设定,初始状态既不能太难又不能太简单,太难玩家不容易上手,太简单又缺乏挑战性。
随着玩家的深入,游戏适当增加难度,比如增强敌方攻击的复杂性,加快敌方进攻的速度,加强敌方的生命值等,玩家只有不断努力,提高游戏技能才能争取更好的成绩。
游戏与玩家的交互设计在游戏定制中起到举足轻重的作用。
交互设计应规划和描述玩家和计算机双方面的行为方式,以及传达这种行为的有效形式和方法,从而使玩家和游戏、玩家和计算机达到最直接、最简便的交流。
落实到具体的操作设计,包括:玩家使用按键或鼠标的行为设计、游戏界面中的按钮和热区设计、奖惩画面和音效设计等。
游戏的奖惩措施是游戏与玩家交互性的体现。
玩家通过阶段性的努力可以获得提高的积分排名、先进的装备和增强的生命值等奖励。
在Flash互动游戏设计时,需要考虑“成功”、“进阶”、“排名”、“失败”的游戏画面和音乐应对玩家有所激励。
游戏的智能主要是指“通过编写程序控制游戏环境的变化或者条件的变化,来增加游戏的难度与可玩性”。
游戏的智能一般通过具体以下几个方面体现:预测玩家动作,由游戏程序响应玩家的各种鼠标、键盘输入,并及时做出各种反应;选取最短路径攻击,根据游戏主角和追踪物体的坐标,判断敌我之间的最短距离,改变追踪物体运动方向,配以不同的运动速度或曲线方程使其流畅地向游戏主角运动;设计追踪物体的运动规律,以特定时间触发,使追踪物体在一定区域内沿有规律的路径移动,玩家只有掌握了敌方的运动规律,才能避实就虚成功闯廷. .在进行敌方逃跑、追踪物体与游戏主角碰撞的设计时,都需要使用hitTest()函数,一旦敌方视线接触到游戏主角则反方向逃窜,一旦追踪物体与游戏主角发生碰撞就发生爆炸或游戏阶段结束。
游戏的初始化与重置是游戏设计流程中一个重要的部分。
游戏初始,在游戏规则介绍后设置Play按钮,同时需要对游戏参数进行初始化;在Game Over 或win界面中设置Replay按钮,同时需要对游戏参数进行重置,以便玩家重新开始游戏。
当玩家获得阶段成功进阶以后,某些参数需要重置,某些参数需要累加,以便玩家继续游戏。
2.准备游戏素材:构思好游戏规则的同时,需要对游戏素材进行收集、整理、制作、编辑。
游戏的素材主要包括图形、图像、视频、声音、程序等。
由于Flash本身就是图形制作软件,所以可在Flash中绘制大部分所需图形,但是Flash在许多图形绘制功能上不如专门的图形软件如Illustrator、Freehand、Coreldraw等强大。
好在Flash有很好的兼容性,能够实现软件之
间的有效配合,设计人员可以在其它软件中做好图形后导入到Flash中使用。
Flash对图像的编辑非常有限,一般先在图像处理软件如Photoshop中处理好后导入。
由于网络游戏是通过显示器与玩家交流的,所以图像分辨率设成72ppi,RGB色彩模式即可,使图像文件在保证良好的显示质量的前提下尽可能小。
否则,大而不当的图像不仅不会明显提高玩家的视觉感受,反而降低了游戏的网络传输及下载速度。
随着Flash版本的提高,Flash对视频的导入越来越方便。
Flash 6或更高版本中内建Sorenson Spark编解码器,可以对视频的图像质量、关键帧间隔、色彩、尺寸、视频音频轨迹、压缩方式等方面进行调整。
也可以只把视频文件作为外部链接,使用QuickTime?打开。
Flash可以实现对声音导入并进行一定程度的编辑,可以导入的声音文件有wav格式、mp3格式、aif格式、au格式等,能够实现在声音编辑面板调整声音的左右声道、声音的淡入淡出、终止一段声音等操作。
在Flash Public Setting 发布面板,还可以对声音进行一定程度的压缩,从而减小Flash文件量。
为了控制文件量,通常把一段与游戏适合的声音循环播放,玩家通过音乐开关来控制是否停止,也可以设计多种音乐并配以按钮供玩家选择。
音效则是当事件触发响起,给玩家以提醒和警示。
3.游戏的测试与发布:游戏程序编写基本完成以后,需要对程序反复调试。
尽量组织多人全面地测试,查找程序中的Bug,测试游戏性能。
由于键盘和鼠标是玩家控制、操作游戏的主要途径,按键及其组合是否触发方便,玩家触发后的游戏反映动作是否流畅等,都会影响玩家与游戏的交互性,影响玩家的主观感受。
程序员可以编写程序使玩家自定义按键,以满足玩家使用键盘的习惯。
测试游戏的播放速度也是非常重要的,在进行界面设计时,为了提高游戏的播放速度需要考虑以下几个方面:减少复杂图形的使用或把复杂图形转换为图像;减少图形中的曲线和节点、渐变色、透明色;保证导入的图像或视频文件在满足可观性的前提下尽可能小;设置声音为单声道或降低采样频率,采用Mp3压缩等。
Flash 游戏可以发布为swf格式、html格式、mov格式、exe格式等,以上的文件格式都能够保持良好的交互功能,并可以使用相应的Flash Player、QuickTime?等播放器或浏览器进行操作。
五、Flash游戏制作的关键技术
1.Flash元件:图形Graphic、影片剪辑MovieClip和按钮Button。
由于反复调用元件不会明显增大文件量,所以对于不止一次使用的对象应将其转换为元件存于库中。
Graphic元件在ActionScript中既不能控制其它动作也不能被控制,所以经常把静态的图形或图像转换为Graphic,用于背景或二维动画中角色的拆分动作。
MovieClip元件在场景中有自顾自地循环播放特性,MovieClip
影片剪辑的事件可以触发或调用其它动作的执行,MovieClip影片剪辑也可以被动态地改变某些参数和属性。
Button按钮有四态,前三态分别是光标不在按钮上的up状态、光标滑过按钮时的over状态以及光标在按钮上单击时的down 状态,这三态为按钮的响应外观。
最后一态是hit状态,即鼠标事件的响应区域,是按钮起交互作用的关键,游戏中常利用hit响应区域来设置隐形按钮。
影片剪辑MovieClip和按钮Button是Flash互动游戏开发中不可缺少的重要元件。
2.Flash组件:组件是由专业人员构建、开发和测试的包含参数的复杂的影片剪辑,其中的参数可以用来修改组件的外观和行为。
每个组件还有一组属于自己的方法、属性和事件,它们被称为应用程序程接口(Application Programming Interface,API)。
组件具有通用性,程序员可以使用相同的接口控制组件,通过组件检查器或ActionScript实现组件和外部信息交换数据;接收和处理键盘操作,也可以控制组件深度和外观。
Flash MX 2004或Flash MX Professional 2004中包含的组件不是fla文件,而是SWC文件,SWC是用于组件的文件格式。
库项目中的影片剪辑可以被预编译成swf文件,从而缩短影片测试和发布的执行时间。
将SWC文件拷贝到First Run\Components目录后,该组件便会出现在“组件”面板中。
使用组件进行游戏开发,可以使程序设计与软件界面设计分离,提高代码的可复用性。
3.Flash函数:“在Flash中,函数是指在动画中任何地方都可以重用的ActionScript代码块。
” Flash函数包括内建函数和自定义函数。
游戏中常用的内建函数有:获取和设置属性函数setProperty()和getProperty();随机函数random()和取整函数floor ();设置问隔时间函数setInterval()等。
Flash中自定义的普通函数必须先定义函数再调用函数,尤其是当函数写在一个影片剪辑
中却要在外部调用的时候,一定要等到影片剪辑加载完成后再调用;定义事件触发函数是Flash MX新增的功能。
程序员可以在时间轴上定义影片剪辑或按钮的事件触发函数,比如:当一个影片剪辑或按钮被按下时运行此函数,而不必在影片剪辑或按钮上分别定义,给管理程序带来了很大的便利性。
总之,程序员将反复使用的代码块定义为函数,不仅会提高程序的可读性、重用性,简化了代码编写工作,而且方便了脚本调试,提高了编程效率。
六、Flash 游戏制作示例
对于大多数的Flash学习者来说,制作Flash游戏一直是一项很吸引人也很有趣的技术,甚至许多闪客都以制作精彩的Flash游戏作为主要的目标。
不过往往由于急于求成,制作资料不足,数据获得不易,使许多朋友难以顺利进行Flash游戏设计。
即使自己下定决心,也是进展缓慢,乃至最终放弃。
所有这一切都不是因为制作者的技术水平的问题,而是在于游戏制作前的前期设计与规划没有做好造成的,所以这里我们主要来谈一下Flash游戏制作流程与规划。
游戏的规划与制作流程
在袂定好将要制作的游戏的日标与类型后,接下来是不是可以立郎开始制作游戏了呢?这里的回答是不可以t当然如果你一定要坚持立即开是制作,也不是不可以,只不过要事先提提醒大家的是如果你在制作淤戏前还没有个完整的规划,或者没有一个严谨的制作流程,那么必定蒋净良费标非常多的时间和精力,很有可能淤戏还没制作完成,你就已经感到筋疲力尽了。
所以制作前认真制定一个制作游戏流积和规划是十分必要的。
其实像Flash游戏这样的制作规划或者流程并没有你想象中的那么难,
大致上只需要设想好游戏中会发生的所有情况,如果是RPG游戏需要设计好游戏中的所有可能情节,并针对这些情况女排好对应的处理方法,那么制作游戏就变成了一件很有系统的工作了。
例如下面的流程图:
上图表现了游戏“掷搬子”的流程图,只要对计算机有一定了解的朋
友,对上面的流程图一定不会感到很陌生的,如果是对程序设计有研究的朋友,对它就再也熟悉不过了,即使是在此之前没有接触过流程图的朋友,只要稍微用
心看一下,也不难理解其中包含的意思。
在游戏中,一开始玩家要确定所押的金额,接着会随机出现玩家和电脑各
自的点数,然后游戏对点数进行判断,最后就可以判断出谁胜谁负了。
如果玩家胜利了,就会增加金额,相反则要扣除金额,接着显示目前玩家
的金额,再询问玩家是否结束游戏,如果不结束,则再选择要押的金额,
进行下一轮游戏。
所以,如果有了比较完整的流程图,肯定会使游戏的制作工作更加清晰
和顺利。
制作与测试
当所有的素材都准备好后,就可以正式开始游戏的制作了,这下就需
要靠你的flash技术了,当然,整个游戏的制作细节不是三言两语能说清楚的,关键是靠平时学习和积累的经验和技巧,把它们合理的运用到实际的
制作工作中,这里仅提供几条游戏制作的建议,相信可以帮助您在游戏制
作的过程中更加顺利,
1.分工合作:一个游戏的制作过程是非常繁琐和复杂的,所以要做好
一个游戏,必须要多人互相协调工作,每个人根据自己的特产来进行不同的任务,一般的经验是美工负贵游戏的整体风格和视觉效果,而程序员则进行游戏程序的设计,这样一来,可以充分发挥各自的特点,可以保证游戏的制作质嫩和提高工作效率。
2.设计进度:既然游戏的流程图都已经确定了,这样就可以将所有要
做的工作加以合理的分配,侮天完成定的任务,事先设计好进度表,然
后按进度表去进行制作,才不会在最后关头忙的不可开交,把大量工作堆
在短时间内完成。
3.多多学习别入的作品:当然不是要抄袭他人的作品 ,而是在平时
多注惫别人的游戏制作方法,如果遇到好的作品,就要养成研究和分析的习惯,从这些观摩的经脸中,人家可以学习到不少自己出错的原因,甚至还有自己没注意到的技术,也可以花些时间把它学会。
游戏制作完成后,就需要进行测试了,在测试方面可以利用flash的Controls Test Movie命令来测试动画的执行状况了,进入测试模式后,
还可以经过监视Objects和Variables的方式,找出程序中的问题。
除此之外,为了避免测试时的盲点,一定要在多台计算机上进行测试,而且参加
的人数最好多一点,这样就有可能发现游戏中存在的问题,使游戏可以更
加完善。
上面就是一般游戏的制作流程与规划方法,如果在制作游戏的过程中可
以遵守这样的程序和步骤,那么您的制作过程就可以相对顺利一些,不过上面的步骤也不是一成不变的,可以根据实际情况来更改,只要不会造成游戏制作上的困难就可以。
动手做个“找错误”游戏
在大型的电子游戏厅里都有专门的“找错误”游戏机,很多人围在那里玩,你也一定玩过了吧。
想自己做一个这样的游戏吗?今天我们大家自己动手制作一个Flash找错误游戏。
游戏制作的思路并不复杂:准备两张大同
小异的图片,做好找到错误后的画圈mc,在每个错误的地方放上画圈me和按钮,再刘一按钮添加一些简单的判断控制语句就可以了。
详细步骤如下。
首先我们要准各两张不同的图片,一张是原图,另外一张把它制作成错误图片,我决定制作出有五处错误的图片。
选好原图,我找了樱桃小丸子的卡通画,图一。
下面我们图形处理软件将图一中的五个地方进行修改,制造出五个错误的地方。
处理的方法很多,例如换换某个地方的颜色,同一个地方的事物增加它的数量,减少某个物件等等,中间的步骤我就省略了,最后的结果如图二。
你发现有那五处错误了吗?如果没看见,看看图三。
现在图片己经准备好了,扫一开Flash MX开始游戏制作吧。
第一步:做开始画面。
要知道开始玩游戏的时候,都有一个开始的画面,类似电影的片头。
因此第一步就是做一个开始的动画。
导入图一,把它放在场景的正中
间。
然后在场景中写点“欢迎使用找错误游戏”之类的话,如图四,为游戏做一个简单的介绍。
.现在还差一个开始的按钮,玩家按下开始按钮才能正式进入游戏。
在“插入”菜单下选择“新建一个新符号”,我们建立一个按钮符号,并且
命名为“开始”。
在按钮场景中制作一个简单的开始符号。
回到主场景,把它从库面板中拖到场景中央,然后给按钮增加
一个Action动画:on (release){go to And Play(2);}
在这一层的时间轴上第一帧增加一个Action :stop( );,在第二帧增加一个关键帧,同样添加一个Action: stop();
第二步:游戏制作
现在我们要进行游戏的制作了。
把图乙也异入到Flash h1X中,把两张图片并列排放在主场景中。
如图五把第一层锁定,在时间轴上增加一个新的层,为了让玩家的鼠标移动到图片上有鼠标动作,我们在第二层增加一个大的鼠标事件,并且肉眼看不见。
在第二层的第二帧,增加一个关键帧,新建一个按钮符号,然后在按钮场景中画一个和图片大小差不多的框。
如图六,回到主场景,把这个框遮照在图片上,同时在属性面板中降低这个按钮的透明度让我们的肉眼看不见。
第三步:给错误画圈
锁定该层,增加第三层,同样是在第二帧操作。
这里我们要做一个找到
错误的动画,试想当玩家找到一个错误的时候,该处绘画上一个圆圈,表示这个地方被找到了。
我们把这个画圈的过程做成一个动画。
新建一个电影剪辑符号,取名为“画圈”。
来到画圈的场景,第一帧留一个空帧,并且加一个Action: stop();。
第二帧建立一个关键帧,如图七,开始画圈的第一笔。
这一帧我们增加一个声音效果,让动画更形象。
在Flash MX中自带了
一些声音文件,我们可以从“窗口”菜单下的“Common Libraries”中可以找到。
如图八然后从打开的库中选择一个声音文件添加.在第三帧也增加一个关键帧,我们继续画圆圈。
同理增加第四帧、,第五帧,把圆圈画完。
如图九.在第五帧也增加一个停止的Ation: stop();。
在当前场景可以按
回车键测试一下动画和声音效果。
回到主场景,把这个“圆圈”符号,分别放在图片上每一个错误的位置,左右图都放。
然后每个位置的圆圈,我们都在属性面板中给它们取名,为以后增加动画服务。
左边的图,侮个小圈按照“1a”、“2a”的方式命名,右边的图按照“1b“ 2b”的方式命名,最后效果如图十。