文章目录

  • 什么是动画通知(Anim Notify)?
  • 动画通知的使用方法
    • 1. 直接在动画编辑器中添加动画通知
    • 2. 创建可复用的动画通知类(Anim Notify Class)
  • 补充

什么是动画通知(Anim Notify)?

动画通知就是UE4的动画回调事件,它会被绑定(注册)到动画时间轴的时间点上(可以精确到毫秒),当动画播放到该点就会触发事件并执行我们想要的操作。常见的使用情景比如:在奔跑动画中,我们想让角色脚部和地面接触的时刻播放音效。

如果没有动画通知,我们必须人工计算出这些时间位置,然后在那个时间通执行相应程序。这样很难做到精确,而且效率极低,最头疼的是一旦动画的长短节奏有了变化,一切又要重新计算。

动画通知的使用方法

1. 直接在动画编辑器中添加动画通知

在UE4的动画编辑器中的时间轴上,可以找到一个名为Notifies的区域,Notifies的下面是用来管理动画通知的轨道Track

添加动画通知,必须把鼠标放到Notifies的范围内,然后在相应的时间点右键调出添加菜单,输入动画通知的名字(本例中命名为:PlayStepSound)就可以了


动画通知的位置是可以调节的

接下来,我们就可以在使用了跑步动画的动画蓝图中调用PlayStepSound事件了

实际上,UE4已经为我们预设了很多种动画通知以满足播放音效,粒子特效这样的常见需求

比如我们添加一个预设的PlaySound,可以直接在它的细节面板指定音效文件,连编程都省了。


有朋友可能奇怪,类似PlaySound这样的“预设动画通知”是如何定义的,下面的部分咱们就来介绍一下。

2. 创建可复用的动画通知类(Anim Notify Class)

这些“预设动画通知”叫动画通知类(Anim Notify Class),是UE4提供的一种可复用的动画通知机制

自定义一个动画通知类

动画通知类没有事件图

两个需要override的方法是动画通知类的关键

Received_Notify是当该事件触发时执行的逻辑

  • Mesh Comp:网格组件对象
  • Animation:动画实例对象


GetNotifyName定义了这个动画通知在时间轴上显示的名称

在动画编辑器中添加我们自定义的可复用动画通知

补充

动画通知在动画编辑器的细节面板上还有一些参数,大家可以了解一下,需要时使用。

UE4动画系统:什么是动画通知(Anim Notify)相关推荐

  1. UE4动画系统,蒙太奇动画使用,添加动作

    提示:仅供学习参考 前言 一.什么是蒙太奇? 二.实现步骤 1.使用第三人称游戏c++模板创建一个项目,创建动画蒙太奇 2.在动画蓝图中添加蒙太奇 3.绑定鼠标左键输入 4.添加c++代码 5.设置动 ...

  2. Spine2D动画系统添加骨骼动画事件帧

    spine是基于骨骼的2D动画系统,相比较与模型动画各有利弊.在做项目时,有时候需要在spine特定骨骼出添加动画帧,类似于模型动画的Animation动画帧一样. 接下来就是 spine骨骼的2D动 ...

  3. 游戏引擎的动画系统及骨骼动画原理

    一.<游戏引擎架构>动画系统 动画的几种分类 <游戏引擎架构>中简单介绍了几种动画种类.用途以及优劣,在<计算机动画算法与技术>中详细介绍了各种动画的算法原理: 精 ...

  4. Unity3d 中Legacy动画系统-剑圣的动画

    LoL中大家应该都玩过剑圣,其实很多技能以及动作都是根据动画截取出来的,今天我们就通过动画来实现剑圣的一些动作. 首先我们在场景中拖入模型,点击一下名字,右边Inspector面板会出来几个几个选项, ...

  5. cocos 动画系统

    前面的话 cocos 动画系统支持任意组件属性和用户自定义属性的驱动,再加上可任意编辑的时间曲线和移动轨迹编辑功能,就可以制作出各种动态效果 概述 Animation 组件可以以动画方式驱动所在节点和 ...

  6. Unity3D笔记第十六天——Mecanim动画系统

    Mecanim动画系统 Unity3D动画系统分类:    一:Unity3.5版本之前的旧的Legacy系统;    二:Unity4.0版本新增加的Mecanim动画系统. 新动画系统的优点:   ...

  7. Mecanim动画系统

    本期教程和大家分享Mecanim动画系统的重定向特性,Mecanim动画系统是Unity3D推出的全新的动画系统,具有重定向.可融合等诸多新特性,通过和美工人员的紧密合作,可以帮助程序设计人员快速地设 ...

  8. swiftui动画之tab自定义切换动画_Unity动画系统详解1:在Unity中如何制作动画?

    摘要:在场景中加入动态的物体,可以让整个场景更加生动.真实.Unity场景中的物体可以通过制作动画,让物体动起来.简单的动画如物体的移动.旋转(比如旋转的风扇.闪烁不定的灯泡等),复杂的动画如游戏中角 ...

  9. Unity 3D 动画系统(Mecanim)|| Unity 3D 人形角色动画(Avatar)

    Unity 3D 动画系统(Mecanim) Mecanim 动画系统是 Unity 公司推出的全新动画系统,具有重定向.可融合等诸多新特性,可以帮助程序设计人员通过和美工人员的配合快速设计出角色动画 ...

  10. 【Unity游戏开发】动画系统(二)2D动画

    文章目录 动画系统之2D动画 Unity的动画 2d动画 实例 准备工作 开始简单的动画 结语 动画系统之2D动画 2d动画其实就是图片的转换,每帧转换实现2d的动态效果其实这也是3d动画的实现原理, ...

最新文章

  1. 第二十课.卡尔曼滤波器
  2. linux joe复制一行,Linux joe命令
  3. 使用Python内置函数对变量类型进行转换
  4. mysqlclient==1.3.7对应mysql版本_Python通过MySQLdb访问操作MySQL数据库
  5. ADO的几种数据库连接方式
  6. EF Core 插件 —— ToSql
  7. 的优缺点_浅谈桉木家具的优缺点
  8. 抵制羊毛党,图计算“加持”互联网电商风控
  9. 计算机怎么应用最小二乘法作图,最小二乘法应用
  10. 网络1711-12信管1711-12 图 作业评分
  11. 幼儿园故事导入语案例_幼儿语言活动方案优秀案例合集
  12. 2022最新整理新手零基础系统的自学网络安全
  13. 两台计算机如何共享文档,两台电脑如何共享文件
  14. EXTJS动态载入组件定义文件并初始化组件,动态构造界面的方法.
  15. 缠中说禅学习整理——线段定义及划分(一)
  16. php文件断点上传文件,php大文件上传支持断点上传
  17. 多重共线性是如何影响回归模型的
  18. matlab不是内部或外部命令_如何解决Telnet不是内部或外部命令(电脑提示telnet不是内部或外部命令...
  19. 随机森林算法(RandomForest)实现MNIST手写体数字识别
  20. 供赴鸿蒙什么意思,不负遇见共赴鸿蒙《仙风道骨》手游与你同行

热门文章

  1. HBase介绍、搭建、环境、安装部署
  2. 520 钻石争霸赛 2023
  3. gradle配置环境变量
  4. 怎么查看CAD图纸文件呢?CAD快速看图有什么好的方法吗?
  5. php无限极递归概念,php无限极分类递归与普通
  6. html5 canvas 画阿迪达斯logo,HTML5 Canvas笔记——HTML5 Canvas绘图绘制太极图
  7. java中pre是什么意思_HTML标签PRE在代码中是什么意思
  8. 如何开发合成物品功能?
  9. c++面向对象程序设计-侯捷(课件笔记)(未完待续)
  10. 数据密集型应用系统设计(3)