Unity开发 AnimationCurve

AnimationCurve 动画曲线

这个功能很好用,在粒子系统,理系统上都有用到,还是很常用的

使用这个 可以简单做出曲线动画,当然也可以用曲线公式做,贝塞尔曲线公式

一次

二次

好像点跑题,官方给出的例子如下

Unity开发 AnimationCurve_第1张图片

就是物体上下 做 匀速运动,

Unity开发 AnimationCurve_第2张图片

创建 关键针序列 Keyframe ,插入。 获取

创建关键帧序列:Keyframe[] ks = new Keyframe[3]; 
曲线中加入帧序列:AnimationCurve scaleCurve= new AnimationCurve(ks); 
获取曲线中的帧序列:scaleCurve[index] 或者 scaleCurve.keys[index] 
添加单键:scaleCurve.Addkey(time,value) 
删除单键:scaleCurve.RemoveKey(index)

Unity开发 AnimationCurve_第3张图片

帧序列的相关设置

WrapMode.Loop是指整个循环左右循环。 
WrapMode.Clamp指除了你设置的以外别的位置为直线。 
WrapMode.PingPong指对称循环。 

 

曲线的使用方法

float scaleValue = scaleCurve.Evaluate(value); 
如果value不断增大,则可以不断获取曲线的对应值,将scaleValue赋值于组件的transfrom则可以圆滑的做出组件的大小,位置移动。

https://blog.csdn.net/csdn_xin_l/article/details/51882553

你可能感兴趣的:(S3_Unity学习,Unity定制特性,编译器扩展)