Flash游戏制作平衡球.docx
- 文档编号:7962747
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:11
- 大小:622.10KB
Flash游戏制作平衡球.docx
《Flash游戏制作平衡球.docx》由会员分享,可在线阅读,更多相关《Flash游戏制作平衡球.docx(11页珍藏版)》请在冰豆网上搜索。
Flash游戏制作平衡球
毕业设计(论文)
题目Flash游戏制作“平衡球”
姓名李贝___
学号0805241016__
班级08计算机____
专业计算机使用技术_
分院信息工程系___
指导教师_______姚敏_______
2011年5月30日
摘要
随着网络的迅速发展和网页、网站技术的日益深入,互联网的世界也越来越丰富多彩。
不论是游戏、广告还是MV,绝大多数都采用了Flash 技术。
Flash还被广泛使用于交互式软件开发、展示和教育等方面,在专业多媒体制作软件Authorware和Director中,均可导入Flash动画文件,而且完全使用Flash制作的多媒体教学软件也已经出现。
Flash在影视制作中也同样大有可为。
个性化的充分表达是Flash作品最突出的特色,Flash无法制作大场景的过于精雕细琢的动画,而更适合出产个人化的、风格独特的小作品。
本论文主要介绍了该游戏的设计过程和实现方法。
论文首先主要介绍制作该flash游戏的目的和意义,设计该动画的技术和指导思想,并对该部动画进行可行性分析,概要设计,并以MacromediaFlash8为开发工具完成了游戏的详细设计。
最后,在论文的结尾部分,对游戏设计过程中出现的问题作了深入的思考和总结,并向在本次制作毕业设计过程中为我提供帮助的老师和同学表示感谢。
关键字:
Flash、游戏、工具、设计
绪论
Flash游戏是一种新兴起的游戏形式,以游戏简单,操作方便,绿色,无需安装,文件体积小等优点现在渐渐被广大网友喜爱。
flash游戏又叫flash小游戏,因为flash游戏主要使用于一些趣味化的、小型的游戏之上,以完全发挥它基于矢量图的优势。
flash游戏因为flashcs3和actionscript3.0的原因,在近年发展迅速,许多年青人投身其中,并在整个flash行业中发挥重要作用。
flashplayer占据了90%互联网用户的浏览器,所以发的发展空间还十分巨大,前途不可估量。
Flash是开发的网页富媒体及强交互技术,最初用来研发交互式或动画网站组件,近几年获得了突飞猛进的发展。
根据Adobe公司的统计,其互联网PC桌面普及率达到了惊人的99%,而JAVA为85.1%。
目前FLASH更在大力向PDA及智能手机终端发展。
Flash技术包含一套可编程脚本分析器,称为ActionScript,使用和Java及Javascript类似语法,可以控制Flash动画,实现多种交互功能。
AS3.0更支持了Socket联网功能,使得开发大型交互式网页游戏成为可能。
凭借ActionScript2.0及ActionScript3.0的出色表现,Flash技术成为了绝大多数小游戏开发的技术基础。
Flash的分析器,称为FlashPlayer,体积十分小巧。
不仅可以支持流行的IE浏览器,还可以支持Firefox,Opera,Safari等多款浏览器,用户下载安装非常方便。
这也是Flash小游戏流行的重要原因之一。
第一章开发工具介绍
本设由Flash、Photoshop和Java作为开发工具,实现了游戏的制作,以下为简要介绍:
1.1Flash
Flash是一种创作工具,设计人员和开发人员可使用它来创建演示文稿,使用程序和其它允许用户交互的内容,Flash可以包含简单的动画、视频内容、复杂演示文稿和使用程序以及介于它们之间的任何内容。
通常,使用Flash创作的各个内容单元称为使用程序,即使它们可能只是很简单的动画。
您也可心通过添加图片、声音、频和特效,构建包含丰富媒体的Flash使用程序。
Flash被称为是“最为灵活的前台”,由于其独特的时间片段分割(TimeLine)和重组(MC嵌套)技术,结合ActionScitp的对象和流程控制,使得在灵活的界面设计和动画设计成为可能,同时它也是最为小巧的前台。
Flash具有跨平台的特性(这点和Java一样),所以无论你处于何种平台,只要你安装了支持的FlashPlayer,就可以保证它们的最终显示效果的一致,而不必像在以前的网页设计中那样为IE或NetSpace各设计一个版本。
同Java一样,它有很强的可移植性。
最新的Flash还具有的手机支持功能,可以让用户为自己的手机设计喜爱的功能。
本设计主要用到了Flash游戏,那么在游戏开发上,有什么发展前景呢?
事实上,Flash中的游戏开发已经进行了多年的尝试。
但至今为止仍然停留在中、小型游戏的开发上。
游戏开发的很大一部份都受限于它的CPU能力和大量代码的管理。
不过可喜的是,FlashPlayer7运行时性能提高了2至5倍;而且最新的FlashMX2004Professional提供了项目管理和代码维护方面的功能,Actionscript2.0的发布也使得程序更加容易维护和开发。
Flash本身就以多媒体和可交互性而广为推崇。
它所带来亲切氛围相信每一位用户都会喜欢。
Flash影片的后缀名为.swf,该类型文件必须有flash播放器才能打开,但占用硬盘空间少,所以现在被广泛使用于游戏。
2.1Photoshop
Photoshop是Adobe公司旗下最为出名的图像处理软件之一,集图像扫描、编辑修改、图像制作、广告创意,图像输入和输出于一体的图形图像处理软件,深受广大平面设计人员和电脑美术爱好者的喜爱。
在制作过程中,总会有一些图片需要处理,有些图片在flash中处理会很麻烦,这时就要借助Photoshop工具来进行辅助,Photoshop能对位图图像进行编辑加工处理以及运用一些特殊效果,其重点在于对图像的处理加工。
在表现图像中的阴影和色彩的细微变化方面进行一些特殊效果处理。
制作出的图片色彩绚丽,效果十分好。
多数人对于PHOTOSHOP的了解仅限于“一个很好的图像编辑软件”,并不知道它的诸多使用方面,实际上,PHOTOSHOP的使用领域很广泛的,在图像、图形、文字、视频、出版各方面都有涉及。
3.1Java
Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。
用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:
跨平台、动态的Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Javaapplet。
Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。
他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。
但是,网络的出现改变了OAK的命运。
在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。
这对于那些迷恋于WEB浏览的人们来说简直不可容忍。
他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的使用程序,当然这些程序还要有极大的安全保障。
对于用户的这种要求,传统的编程语言显得无能为力。
SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术使用于WEB上,并且开发出了HotJava的第一个版本。
当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都心生感叹:
噢,这正是我想要的!
于是Java成了一颗耀眼的明星,丑小鸭一下子变成了白天鹅。
第二章项目的制作
1、游戏简介
该游戏主要是Flash利用材质和遮照创建真实的小球动画的延续,利用创建好的小球滚动动画制作迷宫游戏。
2、制作流程
2.1首先制作一个小球的电影元件,只要画一个圆然后转变为电影剪辑元件就可以。
电影剪辑名字叫ball。
如图1-1
图2-1
2.2在第一帧加入下面代码:
power=0.3;
yspeed=0;
xspeed=0;
friction=0.95;
_root.attachMovie("ball","ball",1,{_x:
250,_y:
175});
ball.onEnterFrame=function(){
if(Key.isDown(Key.LEFT)){
xspeed-=power;
}
if(Key.isDown(Key.RIGHT)){
xspeed+=power;
}
if(Key.isDown(Key.UP)){
yspeed-=power
}
if(Key.isDown(Key.DOWN)){
yspeed+=power
}
xspeed*=friction;
this._y+=yspeed;
this._x+=xspeed;
};
2.3利用渐变填充,给小球上个颜色,使小球更逼真,如图2-3
图2-3
2.4再给引入一幅材质图案,库面板如图2-4
图2-4
2.5利用ActionScript加上遮照。
主要是利用mc.setMask()函数设置遮照了!
效果如图2-5
power=0.3;
yspeed=0;
xspeed=0;
friction=0.95;
_root.attachMovie("ball","ball",1,{_x:
250,_y:
175});
ball.texture.setMask(ball.ball_itself);
ball.onEnterFrame=function(){
if(Key.isDown(Key.LEFT)){
xspeed-=power;
}
if(Key.isDown(Key.RIGHT)){
xspeed+=power;
}
if(Key.isDown(Key.UP)){
yspeed-=power
}
if(Key.isDown(Key.DOWN)){
yspeed+=power
}
xspeed*=friction;
this._y+=yspeed;
this._x+=xspeed;
};
图2-5
2.6然后该让球真的滚动起来,滚动的更加真实。
power=0.3;
yspeed=0;
xspeed=0;
friction=0.95;
_root.attachMovie("ball","ball",1,{_x:
250,_y:
175});
ball.texture.setMask(ball.ball_itself);
ball.onEnterFrame=function(){
if(Key.isDown(Key.LEFT)){
xspeed-=power;
}
if(Key.isDown(Key.RIGHT)){
xspeed+=power;
}
if(Key.isDown(Key.UP)){
yspeed-=power;
}
if(Key.isDown(Key.DOWN)){
yspeed+=power;
}
xspeed*=friction;
yspeed*=friction;
this._y+=yspeed;
this._x+=xspeed;
this.texture._y+=yspeed;
this.texture._x+=xspeed;
if(this.texture._x>158){
this.texture._x-=188;
}
if(this.texture._x<-158){
this.texture._x+=188;
}
if(this.texture._y>158){
this.texture._y-=188;
}
if(this.texture._y<-158){
this.texture._y+=188;
}
};
2.7接下来,倒入准备好的宇宙星空效果图入库,如图2-7
图2-7
2.8并且便于下面的操作,需要锁定这张图层,然后新建一张图层,如图2-8
图2-8
2.9然后就是制作“道路”的过程了,选择矩形工具只做一个长方形,填充颜色为无,如图2-9
图2-9
2.10利用渐变填充,使道路更有质感。
如图2-10
图2-10
2.11利用Ctrl+C,Ctrl+v复制粘贴次方圆格,并组成一条折线的道路,如图2-11
图2-11
2.12选中图层2,转换元件属性为影片剪辑,取名为LU,如图2-12
图2-12
2.13最后,也是最重要的一步,输入一下代码
level=newArray();
_root.attachMovie("starz","starz",1);
_root.createEmptyMovieClip("bricks",2);
level[0]=newArray(1,1,1,1,1,1,1,1,1,0,0,0);
level[1]=newArray(0,0,0,0,0,0,0,0,1,1,1,1);
level[2]=newArray(1,1,1,0,1,1,1,0,0,0,0,1);
level[3]=newArray(1,0,1,1,1,0,1,1,1,1,1,1);
level[4]=newArray(1,0,0,0,0,0,0,0,0,0,0,0);
level[5]=newArray(1,0,1,1,1,1,1,1,0,1,1,1);
level[6]=newArray(1,0,1,0,0,0,0,1,0,1,0,1);
level[7]=newArray(1,0,1,1,0,0,0,1,0,1,0,1);
level[8]=newArray(1,0,0,1,0,1,1,1,0,1,0,1);
level[9]=newArray(1,1,0,1,0,1,0,0,0,1,0,1);
level[10]=newArray(0,1,1,1,0,1,1,1,1,1,0,1);
for(y=0;y<=10;y++){
for(x=0;x<=11;x++){
if(level[y][x]==1){
place_brick=bricks.attachMovie("brick","brick_"+bricks.getNextHighestDepth(),bricks.getNextHighestDepth(),{_x:
x*40+30,_y:
y*40+30});
}
}
}
_root.attachMovie("ball","ball",_root.getNextHighestDepth(),{_x:
30,_y:
30});
ball.texture.setMask(ball.ball_itself);
power=0.4;
yspeed=0;
xspeed=0;
friction=0.99;
ball.onEnterFrame=function(){
if(Key.isDown(Key.LEFT)){
xspeed-=power;
}
if(Key.isDown(Key.RIGHT)){
xspeed+=power;
}
if(Key.isDown(Key.UP)){
yspeed-=power;
}
if(Key.isDown(Key.DOWN)){
yspeed+=power;
}
xspeed*=friction;
yspeed*=friction;
this._y+=yspeed;
this._x+=xspeed;
this.texture._y+=yspeed;
this.texture._x+=xspeed;
if(this.texture._x>53){
this.texture._x-=63;
}
if(this.texture._x<-53){
this.texture._x+=63;
}
if(this.texture._y>53){
this.texture._y-=63;
}
if(this.texture._y<-53){
this.texture._y+=63;
}
brick_x=Math.floor((this._x-10)/40);
brick_y=Math.floor((this._y-10)/40);
if(level[brick_y][brick_x]!
=1){
this._x=30;
this._y=30;
xspeed=0;
yspeed=0;
}
};
3、试和修改
利用可编程脚本分析器检查代码正确和否,并修改调试
4、发布作品
一个FLASH使用的小游戏终于完成了,最后按Ctrl+Enter演示效果。
效果图如图4-1
图4-1
总结和致谢
通过此次作品的制作,让我对Flash的操作更加的熟练、也在制作动画过程中深入的学习到了很多设计方面和制作构思上接触到了很多。
最重要的制作动画中磨练了我的意志。
我想只要认真学习,多借鉴别人的经验,多思考,多实践一定能够作出更好的作品。
感谢培养教育我的大同煤炭职业技术学院学校,舒适的学习环境我将终生难忘!
祝母校蒸蒸日上,永创辉煌!
祝校长财源滚滚,仕途顺利!
感谢对我倾囊赐教、鞭策鼓励的大学大同煤炭职业技术学院系诸位师长,诸位恩师的谆谆训诲我将铭记在心。
祝恩师们身体健康,家庭幸福!
感谢论文中引文的原作者,他们都是法学界的名师大家,大师风范,高山仰止。
祝他们寿域无疆,德业永辉!
感谢我的同学我非常珍视和他们的友谊!
祝他们前程似锦,事业有成!
最最感谢生我养我的父母,他们给予了我最无私的爱,为我的成长付出了许多许多,焉得谖草,言树之背,养育之恩,无以回报,惟愿他们健康长寿,大学生活一晃而过,回首走过的岁月,心中倍感充实,当我写完这篇毕业论文的时候,有一种如释重负的感觉,感慨良多。
首先诚挚的感谢我的论文指导老师姚敏老师。
她在忙碌的教学工作中挤出时间来审查、修改我的论文。
还有教过我的所有老师们,你们严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;他们循循善诱的教导和不拘一格的思路给予我无尽的启迪。
感谢三年中陪伴在我身边的同学、朋友,感谢他们为我提出的有益的建议和意见,有了他们的支持、鼓励和帮助,我才能充实的度过了三年的学习生活。
参考文献
1、《多媒体课件制作案例教程》沈大林、洪小达主编;
2、《中文Flash8案例教程》沈大林主编;
3、《多媒体CAI课件制作案例教程》艾伦、连为民主编;
4、《Flash8中文版动画创作实用教程》刘小伟温培和主编;
5、《FlashCS4完全自学教程》刘文杰主编。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Flash 游戏 制作 平衡
![提示](https://static.bdocx.com/images/bang_tan.gif)