前一阵子频繁更改模型,总是手动添加动画事件 animator events一直比较麻烦,我就想能不能动态的生成对应的动画事件呢,然后找了一些资料,试了下感觉还不错,分享给大家,欢迎大家留言交流~需要注意的是修改后的动画事件重新动态加载后依然保留,猜测注册修改的是元数据,除非注销或者程序停止才能恢复。
using UnityEngine;
using System.Collections;
public class DynamicLoading_AninatorEvents_SZQ : MonoBehaviour
{
private Animator m_Animator = null;
private RuntimeAnimatorController m_runtimeAnimatorController = null;
private AnimationClip[] clips = null;
void Start()
{
m_Animator = GetComponent<Animator>();
// 获取运行时运行时动画器控制器
m_runtimeAnimatorController = m_Animator.runtimeAnimatorController;
//获取含有的动画片段
clips = m_runtimeAnimatorController.animationClips;
//根据动画名称设置对应的事件
for (int i = 0; i < clips.Length; i++)
{
if (clips[