您的位置:首页 > 移动开发 > Unity3D

iTween基础之Shake(摆动)

2016-03-09 00:00 465 查看
摘要: 一、基础介绍
ShakePosition: 根据提供的amount衰减其值随机摇动游戏物体的位置,其晃动大小和方向由提供的amount决定
ShakeRotation: 根据提供的amount衰减其值随机摆动旋转游戏物体的角度,其转动角度就是X,Y,Z的值的大小.
ShakeScale:根据提供的amount衰减其值随机摆动改变游戏物体的大小,其大小比例变化方向和大小由提供的Vector3决定.

一、基础介绍;二、基础属性
原文地址 :http://blog.csdn.net/dingkun520wy/article/details/50836780

一、基础介绍

ShakePosition: 根据提供的amount衰减其值随机摇动游戏物体的位置,其晃动大小和方向由提供的amount决定

ShakeRotation:
根据提供的amount衰减其值随机摆动旋转游戏物体的角度,其转动角度就是X,Y,Z的值的大小.

ShakeScale:根据提供的amount衰减其值随机摆动改变游戏物体的大小,其大小比例变化方向和大小由提供的Vector3决定.

二、基础属性

基础属性比较简单直接上代码
1,ShakePosition

[csharp] view plain copy





void Start () {

//键值对儿的形式保存iTween所用到的参数

Hashtable args = new Hashtable();

//摇摆的幅度

//args.Add("amount", new Vector3(5, 5, 5));

//args.Add("x", 20);

args.Add("y",100);

//args.Add("z", 2);

//是世界坐标系还是局部坐标系

args.Add("islocal", true);

//游戏对象是否将面向其方向

args.Add("orienttopath", true);

//面朝的对象

//args.Add("looktarget", new Vector3(1, 1, 1));

//args.Add("looktime", 5.0f);

//动画的整体时间。如果与speed共存那么优先speed

args.Add("time", 1f);

//延迟执行时间

//args.Add("delay", 0.1f);

//三个循环类型 none loop pingPong (一般 循环 来回)

//args.Add("loopType", "none");

//args.Add("loopType", "loop");

args.Add("loopType", iTween.LoopType.pingPong);

//处理动画过程中的事件。

//开始动画时调用AnimationStart方法,5.0表示它的参数

args.Add("onstart", "AnimationStart");

args.Add("onstartparams", 5.0f);

//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,

//那么就得在接收对象的脚本中实现AnimationStart方法。

args.Add("onstarttarget", gameObject);

//动画结束时调用,参数和上面类似

args.Add("oncomplete", "AnimationEnd");

args.Add("oncompleteparams", "end");

args.Add("oncompletetarget", gameObject);

//动画中调用,参数和上面类似

args.Add("onupdate", "AnimationUpdate");

args.Add("onupdatetarget", gameObject);

args.Add("onupdateparams", true);

iTween.ShakePosition(btnBegin, args);

}

//动画开始时调用

void AnimationStart(float f)

{

Debug.Log("start :" + f);

}

//动画结束时调用

void AnimationEnd(string f)

{

Debug.Log("end : " + f);

}

//动画中调用

void AnimationUpdate(bool f)

{

Debug.Log("update :" + f);

}

2,ShakeRotation

[csharp] view plain copy





void Start () {

//键值对儿的形式保存iTween所用到的参数

Hashtable args = new Hashtable();

//摇摆的幅度

args.Add("amount", new Vector3(20, 100,0));

//args.Add("x", 20);

//args.Add("y",100);

//args.Add("z", 2);

//是世界坐标系还是局部坐标系

args.Add("space", Space.Self);

//动画的整体时间。如果与speed共存那么优先speed

args.Add("time", 1f);

//延迟执行时间

//args.Add("delay", 0.1f);

//三个循环类型 none loop pingPong (一般 循环 来回)

//args.Add("loopType", "none");

//args.Add("loopType", "loop");

args.Add("loopType", iTween.LoopType.pingPong);

//处理动画过程中的事件。

//开始动画时调用AnimationStart方法,5.0表示它的参数

args.Add("onstart", "AnimationStart");

args.Add("onstartparams", 5.0f);

//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,

//那么就得在接收对象的脚本中实现AnimationStart方法。

args.Add("onstarttarget", gameObject);

//动画结束时调用,参数和上面类似

args.Add("oncomplete", "AnimationEnd");

args.Add("oncompleteparams", "end");

args.Add("oncompletetarget", gameObject);

//动画中调用,参数和上面类似

args.Add("onupdate", "AnimationUpdate");

args.Add("onupdatetarget", gameObject);

args.Add("onupdateparams", true);

iTween.ShakeRotation(btnBegin, args);

}

//动画开始时调用

void AnimationStart(float f)

{

Debug.Log("start :" + f);

}

//动画结束时调用

void AnimationEnd(string f)

{

Debug.Log("end : " + f);

}

//动画中调用

void AnimationUpdate(bool f)

{

Debug.Log("update :" + f);

}

3,ShakeScale

[csharp] view plain copy





void Start () {

//键值对儿的形式保存iTween所用到的参数

Hashtable args = new Hashtable();

//摇摆的幅度

args.Add("amount", new Vector3(2,0,0));

//args.Add("x", 20);

//args.Add("y",100);

//args.Add("z", 2);

//动画的整体时间。如果与speed共存那么优先speed

args.Add("time", 1f);

//延迟执行时间

//args.Add("delay", 0.1f);

//三个循环类型 none loop pingPong (一般 循环 来回)

//args.Add("loopType", "none");

//args.Add("loopType", "loop");

args.Add("loopType", iTween.LoopType.pingPong);

//处理动画过程中的事件。

//开始动画时调用AnimationStart方法,5.0表示它的参数

args.Add("onstart", "AnimationStart");

args.Add("onstartparams", 5.0f);

//设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,

//那么就得在接收对象的脚本中实现AnimationStart方法。

args.Add("onstarttarget", gameObject);

//动画结束时调用,参数和上面类似

args.Add("oncomplete", "AnimationEnd");

args.Add("oncompleteparams", "end");

args.Add("oncompletetarget", gameObject);

//动画中调用,参数和上面类似

args.Add("onupdate", "AnimationUpdate");

args.Add("onupdatetarget", gameObject);

args.Add("onupdateparams", true);

iTween.ShakeScale(btnBegin, args);

}

//动画开始时调用

void AnimationStart(float f)

{

Debug.Log("start :" + f);

}

//动画结束时调用

void AnimationEnd(string f)

{

Debug.Log("end : " + f);

}

//动画中调用

void AnimationUpdate(bool f)

{

Debug.Log("update :" + f);

}

更多unity3d动画基础 http://blog.csdn.net/dingkun520wy/article/details/50550529
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息