首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

Android游戏开发基础part6-卡通片

2012-06-24 
Android游戏开发基础part6--动画Android游戏开发基础part6--动画动画想必大家不陌生了,一些大型游戏,比如《

Android游戏开发基础part6--动画

Android游戏开发基础part6--动画

动画想必大家不陌生了,一些大型游戏,比如《真实赛车》、《极品飞车》、《斯巴达英雄》、《彩虹六号》等等我玩过的大型游戏都有过场动画,很多精彩的特效。这些动画让游戏变得更加生动和震撼。动态的元素在游戏是必不可少的,这些动态元素可能是角色的移动、爆炸的效果、过场的特效等等。

针对动画这一块《Android游戏编程之从零开始》介绍得并不多,它主要讲了两种实习方式:

1.系统提供的Animation类特效

2.开发者自行设计的的动画

下面进行学习总结:

Animation动画

在Android中,系统提供了动画类Animation,其中分为四种动画效果:

·AlphaAnimation:透明度渐变动画;

·ScaleAnimation:渐变尺寸缩放动画;

·TraslateAnimation:移动动画;

·RotateAnimation:旋转动画;

4种动画效果具体创建方法:

1.Animation alphaA = new AlphaAnimation(float fromAlpha,float toAlpha)

第一个参数:动画开始时的透明度

第二个参数:动画结束时的透明度

两个参数的取值范围为[0,1],从完全透明到完全不透明

2.Animation scaleA = new ScaleAnimation(float fromX,float formY,float toY,int pivotXType,float pivotXValue,int pivotYType,float pivotYvalue)

第一个参数:动画起始时的X坐标上的伸缩比例

第二个参数:动画结束时的X坐标上的伸缩比例

第三个参数:动画起始时的Y坐标上的伸缩比例

第四个参数:动画结束时的Y坐标上的伸缩比例

第五个参数:动画在X轴相对于物体的位置类型

第六个参数:动画相对于物体X坐标的位置

第七个参数:动画在Y轴相对于物体的位置类型

第八个参数:动画相对于物体Y坐标的位置

位置类型分为三种:

·Animation.ABSOLUTE:相对位置是屏幕的左上角,绝对位置;

·Animation.RELATIVE_TO_LEFT:相对位置是自身View,取值为0时,表示相对于是自身的左上角,取值为1是相对于自上的右下角;

·Animation.RELATIVE_TO_PARENT:相对于父类View的位置

3.Animation translateA = new TranslateAnimation(float fromXDelta,float toXDelta,float fromXDelta,float toYDelta)

第一个参数:动画起始时X轴上的位置

第二个参数:动画结束时X轴上的位置

第三个参数:动画起始时Y轴上的位置

第四个参数:动画结束时Y轴上的位置

4.Animation rotateA = new RotateAnimation(float fromDegrees,float toDegree,int pivotXType,float pivotXValue,int pivotYType,float pivotYValue)

第一个参数:动画起始时的旋转角度

第二个参数:动画旋转到的角度

第三个参数:动画在X轴相对于物体的位置类型

第四个参数:动画相对于物体的X坐标的开始位置

第五个参数:动画在Y轴相对于物体的位置关系

第六个参数:动画相对于物体的Y坐标的开始位置

以上四种创建方法就是四种不同动画效果的创建方法,虽然他们的创建方法不同,但是还是用一些通用的方法:

·restart():重新播放动画

·setDuration:设置动画播放时间,单位是毫秒

创建项目:AnimationProject

项目运行效果:

初始化效果:

Android游戏开发基础part6-卡通片          ==>透明渐变效果:Android游戏开发基础part6-卡通片

 

==>缩放动画效果:

Android游戏开发基础part6-卡通片  ==>位移动画效果:Android游戏开发基础part6-卡通片

==>旋转动画效果:

Android游戏开发基础part6-卡通片     

 

项目源代码:

==>Animation.java

 

==>MyView.java


 


系统的四种动画效果就这样完了,下面是自定义动画类型:

1.动态位图

2.帧动画

3.剪切图动画

 

概念总结:

动态位图:顾名思义,会动的位图,只要不断改变位图的坐标,实现位图的移动,产生动态效果就行啦

帧动画:学过flash的童鞋肯定知道帧动画,所谓帧动画就是一帧一帧按照一定顺序进行播放实现,实现方法也很简单,定义一个位图数组存放全部帧,在绘图函数中不断绘图就行了

剪切画动画:是游戏开发中最常用的实现方式,类似于帧动画,唯一区别在于动态物体的动作帧全部放在同一张图片中,然后在通过设置可视区域完成。

分别创建三个项目实现它们,具体的代码不再粘帖,有兴趣的请参考《Andriod游戏编程之从零开始》

 

 

 

 

 

 

 

 

 

热点排行