4.16中Montage的一些变化
用4.16版本跟着网上的几篇Montage教程(分别是对应4.6和4.8版本)做,遇到各种各样的问题,经过各种搜索和分析,最终终于搞定了。
4.16版的Montage和之前有了不小的变化,总结如下:
Root Motion
以前Montage里可以设置是否使用RootMotion,现在已经不复存在了,关于是否使用Root Motion的设置改在了每个动画序列自身。
这就一定要注意,如果不希望一个Montage使用Root Motion(例如官方教程里的边行走边打拳,打拳的动画是不需要Root Motion动画的),就要保证所有使用到的Montage都去掉了使用Root Motion。否则会出现这样的场景:行走中按下打拳按键时角色会突然停下来原地打拳。

Play Montage 节点
首先Play Montage的节点发生变化了:

注意In Skeletal Mesh Component 一定要连接,不然不起作用。这里要输入的是Skeletal Mesh组件
然后需要给Starting Section指定起始Section的名称
另外根据4.16的更新说明,Play Montage现在变成了一个异步节点,可以在任何蓝图里调用,我尝试在Character的蓝图里调用发现确实是可以的,这样会使原来的蓝图简化很多。
最后,还增加了很多输出事件,应该是非常有用的。
简化蓝图
官方教程中(4.6和4.8版本的都一样)Montage只能放在动画蓝图中,为了避免重复执行,做了很麻烦的Branch和Do Once之类的设置。还在动画蓝图里设置了一个Punch 事件用于播放Montage。实际上这是最蠢的做法。

稍微聪明点的做法
Punch 事件还是得在动画蓝图中定义(这是没办法的,必须的),但是可以去掉上面Branch 和 Do Once和后面的部分。
而在角色蓝图中的相应按键处通过Mesh获取Anim BP,Cast 以后 执行里面的Punch 事件。


4.16以后最优的做法
在动画蓝图里彻底删掉MontagePlay的事件,只保留AnimNotify的事件。

在角色蓝图中直接调用Play Montage! 简直太棒了。

补充
最后再补充一下做Montage过程中常犯的糊涂:



4.16中Montage的一些变化的更多相关文章
- [译] OpenStack Kilo 版本中 Neutron 的新变化
OpenStack Kilo 版本,OpenStack 这个开源项目的第11个版本,已经于2015年4月正式发布了.现在是个合适的时间来看看这个版本中Neutron到底发生了哪些变化了,以及引入了哪些 ...
- Lua的函数调用和协程中,栈的变化情况
Lua的函数调用和协程中,栈的变化情况 1. lua_call / lua_pcall 对于这两个函数,对栈底是没有影响的--调用的时候,参数会被从栈中移除,当函数返 回的时候,其返回值会从函数处 ...
- (转)OpenStack Kilo 版本中 Neutron 的新变化
OpenStack Kilo 版本,OpenStack 这个开源项目的第11个版本,已经于2015年4月正式发布了.现在是个合适的时间来看看这个版本中Neutron到底发生了哪些变化了,以及引入了哪些 ...
- JEP解读与尝鲜系列4 - Java 16 中对于 Project Valhalla 的铺垫
这是 JEP 解读与尝鲜系列的第 4 篇,之前的文章如下: JEP解读与尝鲜系列 1 - Java Valhalla与Java Inline class JEP解读与尝鲜系列 2 - JEP 142 ...
- Entity Framework 6 Recipes 2nd Edition(9-3)译->找出Web API中发生了什么变化
9-3. 找出Web API中发生了什么变化 问题 想通过基于REST的Web API服务对数据库进行插入,删除和修改对象图,而不必为每个实体类编写单独的更新方法. 此外, 用EF6的Code Fri ...
- WPF中监视DependencyProperty的变化
WPF中监视DependencyProperty的变化 周银辉 尽管一个类会提供很多事件,但有时候还是显得不够,比如说前两天我就以为WPF的ListBox控件会有ItemsSourceChange ...
- error LNK2019: 无法解析的外部符号 __imp__GetStockObject@4该符号在函数_WinMain@16 中被引用
编译链接报错 error LNK2019: 无法解析的外部符号 __imp__GetStockObject@4该符号在函数_WinMain@16 中被引用 解决方案: 在代码中添加链接库gdi32.l ...
- VMware Workstation 16中安装macOS Big Sur,AMD版
VMware Workstation 16中安装macOS Big Sur,AMD版 目录 VMware Workstation 16中安装macOS Big Sur,AMD版 准备阶段 步骤一:安装 ...
- Java 16 中新增的 Stream 接口的一些思考
这里先提一个题外话,如果想看 JDK 不同版本之间有何差异,增加或者删除了哪些 API,可以通过下面这个链接查看: https://javaalmanac.io/jdk/17/apidiff/11/ ...
随机推荐
- 简述Vue的实例属性、实例方法
1.实例属性 组件树访问 $parent -----> 用来访问当前组件实例的父实例: $root -----> 用来访问当前组件树的根实例,如果当前组件没有父实例,则$root表示当前组 ...
- Grafana设置匿名登录
将配置文件中的auth.anonymous的enabled设置为true就可以匿名登录,不用输入用户名和密码 #################################### Anonymou ...
- [Web 前端] 032 vue 初识
目录 0. 先下载 1. 先写个轮廓 2. 牛刀小试 2.1 例子 1 2.2 例子 2 3. 模板语法 上例子 4. 文本指令 上例子 5. 属性操作 上例子 6. 样式操作 上例子 类名的操作 s ...
- Centos中使用Docker部署Apollo
采用微服务开发框架开发项目时会涉及多个系统,如果要更改配置参数需要在多个系统间逐一更改,比较费时,而且容易遗漏,效率低下,次问题可以采用Apollo配置中心的方式解决,下面将介绍如何配置: 准备环境: ...
- 安装配置php及fastadmin
FastAdmin教程之准备运行环境 一.Node.js http://nodejs.cn/download/ https://npm.taobao.org/mirrors/node/v8.4.0 ...
- PHP排序函数sort、rsort、asort、arsort、ksort、krsort
1.sort函数用于对数组元素值从低到高排序,去除原始索引元素,重新生成0,1,2..的键2.rsort函数用于对数组元素值从高到低排序,去除原始索引元素,重新生成0,1,2..的键3.asort函数 ...
- spark 在启动的时候出现JAVA_HOME not set
解决方法:在sbin目录下的spark-config.sh 中添加对应的jdk 路径,然后使用scp -r 命令复制到各个worker节点
- php 操作分表代码
//哈希分表 function get_hash_table($table, $userid) { $str = crc32($userid); if ($str < 0) { $hash = ...
- MySQL使用explain时各字段解释
1.id select查询的序列号,包含一组数字,表示查询中执行select子句或操作表的顺序 三种情况: (1)id相同,执行顺序由上至下 id相同,执行顺序由上至下 此例中 先执行where 后的 ...
- MySQL存储过程、触发器、自定义函数、事务
1.存储过程 MySQL中存储过程的参数中有IN.OUT.INOUT类型,但是函数的参数只能是IN类型的. “in” 参数:跟 C 语言的函数参数的值传递类似, MySQL 存储过程内部可能会修改此参 ...