多语言展示
当前在线:1332今日阅读:19今日分享:20

unity 3D 中 iTween如何使用

前段时间,整理了下unity 3D中 iTween 插件的使用,与大家分享下。iTween是一个动画库,作者创建它的目的就是最小的投入实现最大的产出.让你做开发更轻松,用它可以轻松实现各种动画,晃动,旋转,移动,褪色,上色,控制音频等等 到官网看看 http://itween.pixelplacement.com主要文件有iTween.cs http://code.google.com/p/itween/downloads/list和 iTweenPath.unitypackage(编辑路径才需要这个包)文档地址 http://itween.pixelplacement.com/documentation.phpAudioFrom:pitch和volum属性提供的是初始值audioTo: pitch和volum属性提供的是终结值audioUpdate:pitch和volum属性提供的是终结值 此方法用于Update()方法中CameraFadeAdd:创建一个对象可以模拟摄相机的淡入淡出。CameraFadeDepth:改变摄相机的淡入淡出深度(对象为CameraFadeAdd返回对象)CameraFadeDestroy:删除摄相机的淡入淡出效果(对象为CameraFadeAdd返回对象)CameraFadeSwap:改变摄相机的淡入淡出背景图(对象为CameraFadeAdd返回对象)CameraFadeFrom:立即改变摄相淡入淡出的透明度然后随时间返回.amount:当执行淡入淡出时,其透明度的大小。(透明度越大,淡入淡出越快,个人认为100为满。此方法配合CameraFadeAdd使用,只有在CameraFadeAdd前提下,才可以进行淡入淡出操作。此方法为从CameraFadeAdd返回的对象出淡出到原来的界面。CameraFadeTo:随时间改变摄相机淡入淡出透明度,(透明度越大,淡入淡出越快,个人认为100为满。此方法配合CameraFadeAdd使用,只有在CameraFadeAdd前提下,才可以进行淡入淡出操作。此方法为从本界面淡入到CameraFadeAdd返回的对象CameraTexture:根据提供颜色创建一个full-screen Texture2D,可为CameraFade所用。(可在CameraFadeAdd方法中被调用)ColorFrom:即刻改变对象的颜色值然后随着时间改变其回原来的颜色(总的来说,就是对GUIText和GUITexture的颜色的淡入淡出效果)。Color:此属性代表对象变化初始值。与audioFrom有异曲同工之效ColorTo:随着时间改变对象的颜色组。同上例一样。Color:此属性代表对象变化最终值,与audioTo有异曲同工之效(注意,ColorFrom和ColorTo还有后面的ColorUpdate方法的NamedColorValue属性,GuiText和GuiTexture和3d Text都不支持这个属性,当我们添加有此属性的方法的脚本进去时,会提示)ColorUpdate:跟ColorTo类似,但花销的成本较少,此方法在Update方法中被调用DrawLine:为OnDrawGizmos() 调用(注意此方法只能在OnDrawGizmos()和 OnDrawGizmosSelected()中被调用);DrawLineHandles:此方法只能在OnDrawGizmos()和 OnDrawGizmosSelected()中被调用同理DrawPathDrawPathGizmosDrawPathHandlesPathLength:返回Vector3s或者Transforms之间的距离长度。EaseType:类型枚举,不同类型及其展示可见http://www.robertpenner.com/easing/easing_demo.htmlFadeFrom:即刻改变对象的的阿尔法值,然后随着时间将其阿尔法值变回原值。如果对象上有挂载a Light, GUIText or GUITexture这些组件,这些组件将成为被执行的对象。注:阿尔法值可以粗略理解为对象的透明度,值越小,透明度越大。这里的 alpha或者 amount 是变化初值FadeTo:同上,alpha或amount是变化终值。FadeUpdate :同FadeTo类似,在Update()方法中调用,提供时刻改变属性值的环境。不局限于EaseTypeFloatUpdate:根据提供的速度返回两个值之间的连续值。Hash:用来创建Hashtables的通用接口,尤其对C#开发者有用。Init:树立起一个游戏对象以防止中断当一个初始iTween被添加时。建行运行这个在每个你想运行iTween在它的Start()或Awake()方法。LookFrom:即刻旋转物体让其看提供的Vector3或都Transfrom,然后随时间旋转回原来的角度值注:物体的脸部一般以本地坐标(即物体坐标)的Z轴,脸部朝向方法,即Z轴指向方法。LookTo:随时间旋转物体让其脸部朝向所提供的Vector3或Transform位置。LookUpdate:同LookTo类似,在Update()方法中调用。LoopType :循环方法的枚举。三种:none:不循环loop:退回然后重新开始pingPing:来回摆动播放MoveAdd:随时间改变游戏对象的位置(原理还有点蒙,感觉跟MoveBy有点像)amount:是改变物体位置的一个值,不是目标位置的坐标。MoveBy:增加提供的坐标到游戏对象的位置MoveFrom:立即改变游戏对象的位置为提供的,然后随时间改变游戏对象位置到初始位置属性:movetopath:Boolean值 ,是否自动将物体置于Ptah的起始点,默认值为真Path:目标文件可用路径编缉器获得MoveTo:随时间改变游戏对象的位置到提供的位置MoveUpdate:类似于MoveTo,在Update()方法中调用。提供每帧改变属性值的环境Pause:停止iTween 如果一个iTween以gnoreTimeScale定制且设为True停止工作PunchPosition:对物体的位置添加一个摇晃的力,使其摇晃最终归于原来的位置 其晃动大小和方法由提供的amount(Vector3)决定(方法由Vector3的x,y,z共同决定,晃动大小,由各个方法的值的大小决定)PunchRotation:对物体的旋转添加一个摇晃的力,使其旋转最终归于初始值。其旋转角度大小和方向由提供的Vector3决定,建议用单轴而不是整个Vector3,例如(0,1,0)是绕Y轴旋转,角度大小由Vector3Y轴值大小决定PunchScale:对物体的大小比例添加一个摇晃的力,使其大小比例变化最终归于初始值。其大小比例变化方向和大小由提供的Vector3决定。例如(0,1,0)是在Y轴方向对物体大小变化(即变化物体的高),大小由该方向的值大小决定PutOnPath :根据提供的百分比将游戏物体置于所提供路径上。(1为百分之百)PointOnPath:根据提供的百分比返回一条路径上的Vector3的位置RectUpdate:返回一个RECT在提供的两个值之间,大小变化根据提供的速度Resume:恢复iTweensRotateAdd:对游戏物体的旋转角度随着时间增加所提供的欧拉角(顺时针旋转。Vector3三个值解析:X,Y,Z各代表围绕哪个轴转动。其转动角度就是X,Y,Z、的值的大小。amount:欧拉角大小)RotateBy:把提供的值乘以360,然后随着时间旋转游戏物体的角度按计算得的值。例 如(0,1,0)就是绕Y轴旋转360度。 顺时针旋转RotateFrom:立即改变游戏物体角度的欧拉角,然后随着时间旋转回原来的角度,属性提供的欧拉角为变化初始值RotateTo:旋转游戏物体角度到我们所提供的欧拉角角度。属性提供的欧拉角为变化终结值RotateUpdate:跟RotateTo类似,该方法在Update中被调用,提供一个可改变属性值的环境。不用局限于EaseTypeScaleAdd:随着时间根据提供的amount(Vector3)增加游戏物体的大小ScaleBy:随着时间变形游戏物体,游戏物体最终变形大小由我们提供的amount(Vector3)值决定 算法:最终变形大小=游戏物体初始的sacle * 我们提供的 amount值ScaleFrom:立即改变游戏物体的比例大小,然后随时间返回游戏物体原本的大小。amount:为物体变形的初始大小ScaleTo:随着时间改变物体的比例大小到我们提供的Scale大小(scale值)ScaleUpdate:跟ScaleTo类似,此方法用于Update中,提供可改变属性值的环境 ,不用局限于EaeTypeShakePosition:根据提供的amount衰减其值随机摇动游戏物体的位置,其晃动大小和方向由提供的amount(Vector3)决定(方向根据Vector3随机,晃动大小,由各个方向的值的大小决定)ShakeRotation:根据提供的amount衰减其值随机摆动旋转游戏物体的角度 。Vector3三个值解析:X,Y,Z各代表围绕哪个轴旋转。其转动角度就是X,Y,Z、的值的大小ShakeScale:根据提供的amount衰减其值随机摆动改变游戏物体的大小。其大小比例变化方向和大小由提供的Vector3决定。例如(0,1,0)是在Y轴方向对物体大小变化(即变化物体的高),大小由该方向的值大小决定stab:播放AudioClip一次,不用手动加载AudioSource组件Stop:停止iTweensStop By Name:停止指定名字的iTweenValueTo:返回一个插值在两件值之间的回调函数的值Returns a value to a callback method interpolated between the supplied 'from’ and 'to’values for application as desired. Requires an 'onupdate’ callback that accepts the sametype as the supplied 'from’ and 'to’ properties.Vector2Update:Returns a Vector2 that is eased between a current and target value by thesupplied speed.*Vector2Update(Vector2 currentValue, Vector2 targetValue, float speed) : Vector2Vector3Update: Returns a Vector3 that is eased between a current and target value by thesupplied speed.*Vector3Update(Vector3 currentValue, Vector3 targetValue, float speed) : Vector3iTween介绍和用法一.iTween 介绍iTween是一个动画库,作者创建它的目的就是最小的投入实现最大的产出.让你做开发更轻松,用它可以轻松实现各种动画,晃动,旋转,移动,褪色,上色,控制音频等等二.iTween原理iTween的核心是数值插值,简单说就是给iTween两个数值(开始值,结束值),它会自动生成一些中间值,大概像这样子,开始值->中间值->中间值…. ->结束值。这里的数值可以理解为:数字,坐标点,角度,物体大小,物体颜色,音量大小等三.iTween下载:从官网http://itween.pixelplacement.com下载主要文件有两个iTween.cs和iTweenPath.unitypackage(编辑路径才需要这个包)四.如何将iTween加入项目:在项目中建立Plugins目录,然后将下载的iTween.cs放到Plugins目录即可.如果需要编辑路径,使用import package->custom package菜单功能加入iTweenPath.unitypackage五.几种效果演示六.示例代码:1.物体移动iTween.MoveTo(target, iTween.Hash('position', destPos, 'easetype', easeType));2.数值过渡iTween.ValueTo(gameObject, iTween.Hash('from', y,'to', toY,'easetype', easeType,'loopType', loopType,'onupdate', 'onupdate','time', tm));3.振动iTween.ShakePosition(target, Vector3(0, 0.1, 0), 1);4.按路径移动var path = GameObject.Find('Plane').GetComponent('iTweenPath').GetPath('myPath');iTween.MoveTo(gameObject, iTween.Hash(//'position', Vector3(0, 0, 0),'path', path,'time', 20,'easetype', 'linear'));六.路径编辑1.将iTweenPath.cs拖至某个游戏对象上,这个游戏对象的就会多出如下属性,下图表示路径由5个节点组成,路径名称为myPath2.可以手工填写节点坐标,也可以在场景中调整节点坐标本人综合诸多资源总结而出,谢谢!
推荐信息