UE4_官方动画内容示例1.3_ 运动混合空间(Locomotion BlendSpace)

如何使用运动(Locomotion)混合空间将Actor在不同方向上及不同速度的运动混合起来。(例如,展示了一个混合了以不同速度向后、前、左和右走路/跑步动作的Actor)。

一、相关知识点:

混合空间是允许根据多个输入的值混合任意数量动画的资源。

混合空间(Blend Space) 是可以在 动画图(AnimGraph) 中采样的特殊资源, 允许根据两个输入的值混合动画。要根据一个输入在两个动画之间实现简单混合, 可以使用 动画蓝图 中提供的一个标准 混合节点 。混合空间提供的方法是根据多个值(目前仅限于两个) 在多个动画之间进行更复杂的混合。

混合空间的目的是避免创建单个硬编码节点 来根据特定属性或条件执行混合。通过允许动画师或程序员指定输入、动画 以及如何使用输入来混合动画,几乎可以使用通用 混合空间执行任一类型的混合。

二、实现步骤:

1、新建Actor,更名为BP_Locomotion.

2、添加骨骼网格体组件,并添加骨骼网格体

3、创建动画蓝图ABP_Locomotion,并把动画蓝图填到上图的动画类中

4、创建混合空间,更名为MyBlendSpace_locomotion.

5、双击打开混合空间,界面如下:

如果动画蓝图与混合空间具有相同的目标骨架,则该混合空间也可以在该动画蓝图的 动画图(Anim Graph) 中使用。

6、在 创建混合空间 并打开资源后,您将需要定义 轴设置(Axis Settings) (对于驱动混合的属性)以及指定要用作 样本姿势(Sample Poses) 的动画。 定义这两个元素后,可以通过更改 混合空间资源"细节(Details)" 面板中的属性来进一步调整混合空间。

7、定义了轴设置后,接下来需要向混合空间编辑器网格添加一些要采样的动画。

您可以在采样点上单击右键以展开一个滑出菜单,其中包含可对样本调节的选项。

8、混合采样集中可以显示你添加的动画信息。

在网格上放置一些样本姿势后,您可以按住 Shift 键并四处拖动绿色菱形以查看姿势之间的混合效果。

同时按住 Shift 键和 Ctrl 键,可以在预览时显示实际样本值。

9、由于篇幅限制,我们从滑块进度条获取的变量值,暂时通过直接设置数值来替代。actor这样设置。

默认值暂时为100.

实际上应为

10、双击打开ABP_Locomotion。

先把actor中变量传过来给动画蓝图的变量,动画内容示例1.2中已经用过

注意滑块得到的是0到1的浮点值,需要转化为-180到180的值,所以需要先减去0.5再乘以360.

这样BP_Locomotion中的speed和direction变量的值就传进了动画蓝图中。

11、把动画蓝图的动画图表打开

12、把资产浏览器中新建的混合空间拖进来。把变量拖进去,连接上。

编译保存,把BP_Locomotion拖入关卡,运行

因为默认值都是100,所以得到的应该是speed为最大,direction也为最大。即向后跑。这里修改为0.5试试效果:

ok!与示例一样。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/472711.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

《汽车数据安全若干问题合规实践指南》正式发布(百度盘下载)

指南针对汽车数据安全的重要合规内容,结合汽车行业特有场景,参考行业最佳实践,提出合规实践建议。指南旨在进一步提高汽车行业数据安全保护水平,增强汽车企业数据安全合规保障能力,推动汽车数据价值安全使用&#xff0…

初始Java篇(JavaSE基础语法)(2)

个人主页(找往期文章包括但不限于本期文章中不懂的知识点):我要学编程(ಥ_ಥ)-CSDN博客 目录 逻辑控制 顺序结构 分支结构 if语句 switch 语句 循环结构 while 循环 for 循环 do while 循环 输入输出 输出到控制台 从键盘输入 …

AIGC——ComfyUI工作流搭建、导入与常用工作流下载

工作流 ComfyUI工作流是一个基于图形节点编辑器的工作流程,通过拖拽各种节点到画布上,连接节点之间的关系,构建从加载模型到生成图像的流程。每个节点代表一个与Stable Diffusion相关的模型或功能,节点之间通过连线传递图片信息。…

蓝桥杯-数的潜能-求快速幂

题目 思路 --将数字拆分成加和的形式,并且相乘。数据范围到10的18次方,暴力肯定不行,要找规律。拆分成1肯定不行,对乘法没有贡献,2可以,3也可以,4、5、6等大于3的数字都可以用2和3来表示。所以…

【堆】Top-K问题

标题:C语言库函数scanf()解读 水墨不写bug (图片来源于网络) 正文开始: Top-K问题是一类问题的统称: 即根据对象的某一属性,找出这个属性最突出的K个对象,并且通常对象…

简单了解多线程

并发和并行 并发: 在同一时刻,多个指令在单一CPU上交替指向 并行:在同一时刻,多个指令在多个CPU上同时执行 2核4线程,4核8线程,8核16线程,16核32线程 基础实现线程的方式 Thread :继承类 &…

OpenJDK11的安装及配置

OpenJDK11的安装及配置: 下载链接:http://jdk.java.net/archive/ 1. 下载 点击链接下载OpenJDK11的zip压缩文件** 选择Windows版本 解压 解压成功。 2. 环境配置 打开设置----选择相关设置中的高级系统设置 选择高级—环境变量 系统变量 下添加JAVA_HOME …

开发技术-FeignClient 对单个接口设置超时时间

1. 背景 FeignClient 调用某个接口,3s 没有结果就需要停止,处理后续业务。 2. 方法 FeignClient 自定义 name 属性 FeignClient(name "aaa" , url "xxx") public interface TestApi {ResponseBodyPOSTMapping(value "xx…

STM32编程控制电机实现PID速度闭环中的堵转检测

实现PID速度闭环控制是编码器电机驱动中的重要任务,而堵转检测和控制则是保证电机正常运行的关键环节。在本文中,我们将详细探讨STM32编程驱动编码器电机实现PID速度闭环控制中堵转检测和控制的方法。 一、堵转检测方法 编码器反馈: 编码器…

软考 系统架构设计师系列知识点之系统性能(1)

所属章节: 第2章. 计算机系统基础知识 第9节. 系统性能 系统性能是一个系统提供给用户的所有性能指标的集合。它既包括硬件性能(如处理器主频、存储器容量、通信带宽等)和软件性能(如上下文切换、延迟、执行时间等)&a…

【零基础C语言】内存中的存储

一. 整数在内存中的存储 1.原码反码补码 在计算机中整数在内存中存储的是二进制数 二进制的存储有三种表示的方式: 原码反码补码 这三种表示方式又分为符号位和数值位: 符号位中0表示正数,1表示负数,最高位被当作符号位,其他为…

DML - 增删改(insert into,delete,update)

引言:对比DB / 表结构 : create , drop , alter 本次记录 数据操作 语言: 1.进入 hive 数据库,再打开 ryx1 表 2. insert select 3. update select 4. delete select

JVM学习-类加载

目录 1.类文件结构 2.类加载器 3.类加载的三个阶段 3.1加载 3.2链接 3.2.1验证 3.2.2准备阶段 3.2.3解析阶段 3.3初始化 4.拓展:反射 4.1获取类对象 4.2创建实例 4.3获取方法 4.4方法调用 1.类文件结构 2.类加载器 类加载器用来将类文件的二进制字节码加载到JV…

3 CUDA硬件概述

3.1 PC 架构 首先,我们看看当下许多PC中都使用的酷睿2(Core2)处理器的典型架构,然后分析一下它是如何影响我们使用GPU 加速器的(如图 3-1所示)。 图3-1典型的酷睿2(Core2)系列处理器的结构图 由于所有的 GPU 设备都是通过 PCI-E(Peripheral Communicat…

修改约束

目录 修改约束 创建数据库 添加约束 删除约束 Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 修改约束 如果说表结构的修改还在可以容忍的范畴之内,那么约束的修改是绝对 100% 禁止的 所有的约束一定要在…

王者荣耀使用的UDP通信,十几年编程没用过的协议

缘起 最近在查阅moba相关的资料时,看到了一篇王者荣耀的研发同学的技术分享,从文章中了解到王者荣耀的通信方式是UDP通信,回想到整个职业生涯,貌似并没有用过,今天特地整理下。 udp技术细节 udp协议 UDP协议叫做用…

代码随想录算法训练营三刷day29 | 回溯算法之 491.递增子序列 46.全排列 47.全排列 II

三刷day29 491.递增子序列回溯三部曲 46.全排列回溯三部曲 47.全排列 II 491.递增子序列 题目链接 解题思路: 回溯三部曲 递归函数参数 本题求子序列,很明显一个元素不能重复使用,所以需要startIndex,调整下一层递归的起始位…

c语言指针(二)

文章目录 c语言指针(二)1.数组名的理解2.使用指针访问数组3.一维数组的传参本质 c语言指针(二) 1.数组名的理解 int arr[10] { 1,2,3,4,5,6,7,8,9,10 }; int* p &arr[0]这⾥我们使⽤ &arr[0] 的⽅式拿到了数组第⼀个元…

系统设计实例(一)百万级别用户系统

二、百万级别用户系统 原则: 尽可能地缓存数据采用无状态Web层支持多个数据中心在 CDN 中托管静态资源通过分片扩展数据层将层级拆分为独立的服务 负载均衡器 负载均衡器会将传入的流量均匀分配给在负载均衡集合中定义的Web服务器,用户直接连接负载均…

【C++ leetcode】双指针问题(续)

3. 202 .快乐数 题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果这个过程 结…