Unity动画桢事件

1,使用原因

在新项目内部审核的时候,说什么动画节奏不匹配,所以决定用动画桢事件来处理技能释放。当释放技能的时候,先播放技能动画,然后再动画桢所在的时间戳执行技能的逻辑。

2,具体实现

1,先选中人物的状态机,打开animation。

*这里有个需要注意的点,因为有的anim在fbx文件下面,只能readonly,这个需要我们把动画拷贝出来作为单独的文件存在。

2,在人物身上添加如下代码,并将脚本绑定在anim所在的物体上:

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;

public class HumanAnim : MonoBehaviour
{
    Action callback;
    public void SetAttack(Action _ac)
    {
        callback = _ac;
    }

    public void OnAttack()
    {
        Debug.LogError("攻击方法回调");
        callback?.Invoke();
    }
}

3,在animation相应的位置添加触发动画

3,测试用例

相关推荐
熬夜敲代码的小N2 小时前
Unity WebRequest高级操作:构建高效稳定的网络通信模块
android·数据结构·unity·游戏引擎
萘柰奈2 小时前
Unity【小问题】----URP项目中加载AssetBundle中的预设体即使加载了依赖的材质依然是紫色的问题
unity·游戏引擎·材质
wonder135794 小时前
UGUI合批分析和优化方法整理
unity·ugui
海中有金5 小时前
Unreal Engine 线程模型深度解析[2]
人工智能·游戏引擎·虚幻
海中有金6 小时前
Unreal Engine 内存池浅谈[11]——总结篇
游戏引擎·虚幻
wonder135796 小时前
UGUI鼠标点击到按钮响应流程的源码分析
unity·ugui
熊猫悟道21 小时前
Unity shader 之,Shader内部时间离散处理
unity·游戏引擎·材质·着色器
PA_1 天前
unity Component-Based Architecture游戏框架
游戏·unity·游戏引擎
yi碗汤园1 天前
C#实现对UI元素的拖拽
开发语言·ui·unity·c#
jtymyxmz1 天前
《Unity Shader》11.3.2 广告牌技术
unity·游戏引擎