public class AnimationEventDemo : MonoBehaviour {
Animation ani; //声明Animation动画
AnimationClip aniclip; //声明aniclip动画剪辑
// Use this for initialization
void Start () {
ani = GetComponent<Animation>(); //获取组件
aniclip = ani.GetClip("walk"); //获取walk的动画剪辑,并赋值给aniclip
//创建一个AnimationEvent 对象
AnimationEvent anievent = new AnimationEvent();
anievent.functionName = "Show"; //注册方法到事件
anievent.time = aniclip.length * 0.9f; //设置在动作中触发事件的时间
anievent.intParameter = 5; //传方法中相应的参数
aniclip.AddEvent(anievent); //将设置好的事件添加到动画
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown(KeyCode.Q))
{
ani.Play("walk"); //播放walk动作
}
}
public void Show(int i)
{
Debug.Log("调用注册方法show参数是:"+i);
}
}
作者:Czhenya
链接:https://czhenya.blog.csdn.net/article/details/77451338
来源:CSDN
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。