美文网首页
UnityEngine.AnimationCurve的使用

UnityEngine.AnimationCurve的使用

作者: 双栖木 | 来源:发表于2018-01-18 14:32 被阅读0次

UnityEngine.AnimationCurve

  • 创建:创建脚本挂载在物体上,定义public AnimationCurve curve;然后在Inspector面板就可以看到多了一个Curve,点开后可进行编辑
  • 简单使用:
public void Update()
{
transform.position = new Vector3(Time.time, anim.Evaluate(Time.time), 0);
}
  • 再做一个简单的案例:
    利用曲线控制小球的运动轨迹和颜色
using UnityEngine;
public class curvetest : MonoBehaviour
{
  public AnimationCurve curve;
  public Color oldColor;
  public Color newColor;
  public float timeScale = 1;
  bool startAnimation = false;
  float startTime = 0;
  float currentTime = 0;
  Material mat;
  void Start()
  {
    mat = transform.GetComponent<Renderer>().material;
    Invoke("ChangeState", 2f);
  }
  void ChangeState()
  {
    startTime = Time.time;
    startAnimation = true;
  }
  float CurrentTime
  {
    get
    {
      if (startAnimation)
      {
        currentTime = ((Time.time - startTime) * timeScale) % 1;
      }
      else
        currentTime = 0;
      return currentTime;
    }
  }
  void Update()
  {

    if (startAnimation)
      UpdateAnimation();
  }
  void UpdateAnimation()
  {
    transform.localPosition = new Vector3(0, curve.Evaluate(CurrentTime), 0);
    mat.SetColor("_Color", Color.Lerp(oldColor, newColor, curve.Evaluate(CurrentTime)));    
  }
}

看完这段代码,应该已经会使用AnimationCurve了,基于Curve我们还可以做更多的事情,许多的面片特效的插件就是通过用Curve来控制面片的scale和position来生成的,大家可以多多尝试

相关文章

  • UnityEngine.AnimationCurve的使用

    UnityEngine.AnimationCurve 创建:创建脚本挂载在物体上,定义public Animati...

  • iconfont的使用(下载使用)

    1、下载文件 2、在生命周期中引入项目 beforeCreate () { var domModule = ...

  • Gson的使用--使用注解

    Gson为了简化序列化和反序列化的过程,提供了很多注解,这些注解大致分为三类,我们一一的介绍一下。 自定义字段的名...

  • 记录使用iframe的使用

    默认记录一下----可以说 这是我第一次使用iframe 之前都没有使用过; 使用方式: 自己开发就用了这几个属...

  • with的使用

    下面例子可以具体说明with如何工作: 运行代码,输出如下

  • this的使用

    什么是this? this是一个关键字,这个关键字总是返回一个对象;简单说,就是返回属性或方法“当前”所在的对象。...

  • this的使用

    JS中this调用有几种情况 一:纯粹的函数调用 这是函数的最通常用法,属于全局性调用,因此this就代表全局对象...

  • ==的使用

    积累日常遇到的编码规范,良好的编码习惯,持续更新。。。 日常使用==用于判断的时候,习惯性将比较值写前面,变量写后...

  • this的使用

    1.默认绑定,就是函数立即执行。 函数立即执行就是指向window,但是如果是node环境,就是指向全局conso...

  • %in% 的使用

    写在前面:From 生信技能书向量难点之一:%in% 难点 (1)== 与 %in% 的区别== 强调位置,x和对...

网友评论

      本文标题:UnityEngine.AnimationCurve的使用

      本文链接:https://www.haomeiwen.com/subject/tohwoxtx.html