动画重定位(相同骨骼)

https://docs.unrealengine.com/latest/CHN/Engine/Animation/AnimationRetargeting/index.html

定义

动画重定位(相同骨架)是一种允许在共用相同骨架资产但比例差异很大的角色之间复用动画的功能。通过重定位,可以防止生成动画的骨架在使用来自不同外形的角色的动画时丢失比例或产生不必要的变形。

注意红字是同估计重定位前提

注意点:

1 原理部分

动画是绑定到 骨架资产 的。骨架资产其实就是一个骨骼名称和层次结构数据的列表,但它也存储了来自用于定义骨架资产的原始骨骼网格的初始比例。此数据是以骨骼平移数据的形式存储的。特别要注意的是,重定位系统只会重定位骨骼的平移分量。骨骼的旋转始终来自动画数据

动画(Animation) - 骨骼平移来自动画数据,不做改变。理解:就是点的位置不变,盆骨,武器(固定大小枪把手),ik(移动步幅)

骨架(Skeleton) - 骨骼平移来自目标骨架的绑定姿势。  理解:A骨骼动画a到B骨骼,使用B骨骼的绑定姿势,不做平移,只使用旋转

比例动画(AnimationScaled) - 骨骼平移来自动画数据,但按骨架的比例调整。

这是目标骨架(播放动画的骨架)与源骨架(制作动画的骨架)的骨骼长度之比。

2 二足常规设置

通常您需要对两足生物使用这些设置:

根骨骼、IK 骨骼、武器骨骼和任何一种将使用动画模式的标记。

骨盆将使用“比例动画”(AnimationScaled),以确保其在正确的高度,同时仍能动作。您希望平移和重定位动画的其他任何骨骼也应该使用“比例动画”(AnimationScaled)。

所有其他骨骼都应使用“骨架”(Skeleton)。它们将使用来自目标骨架的静态平移。

3 设置(某个骨骼)重定位(方式)

注:被设置的骨骼后面要作为重定向源在重定向管理器中被其他骨骼的动画选择

关于右键点击某根骨骼显示递归设置animation,skelete,animScale,

需要先显示出重定向骨骼,才能看到,直接右键看不到

相同骨骼重定向步骤(原文中: 使用重定位源管理器)

1 选中骨骼

2 把目标模型制作成重定向源(模型)

2 在要重定向的动画上的retargesource中选择做好的重定向源(模型)

个模型,不知道为什么要重定向,貌似直接就能用,找不到错误的示例

不同骨骼的重定向

https://docs.unrealengine.com/latest/CHN/Engine/Animation/RetargetingDifferentSkeletons/index.html

原理:

在具有不同骨架的角色之间重定位动画的过程使用一种名为结构(简单说就是人形骨骼)的资产在不同骨架之间传递骨骼信息。

选择结构后,您要在源骨架和目标骨架(您希望将动画重定位到的骨架)之间共享它。

完成这一步后,要使目标骨架的骨骼与结构中存储的节点配对。

一旦目标骨架中的所有骨骼都在结构中设置完毕,您就可以将源骨架使用的动画重定位到目标骨架。

具体方法步骤:

1 骨骼A,B都在重定向管理器中设置为人形骨骼,并且把各自命名的每根骨骼跟人形骨骼中默认命名的骨骼对应

2 关于(不同骨骼重定向)初始姿态问题

这里ue4.17跟之前版本(文档)稍微有些不同,编辑器做了升级

这里记录下详细步骤

a 选中要重定向的那个骨骼(SWAT_Skeleton),打开重定向管理器,点击查看姿势(如果不点这个,调了也没用,这里调整的是重定向时的初始姿态,并不是改变SWAT_Skeleton的初始骨骼姿态,所以才有查看姿势这个开关,当点击隐藏姿势,显示的就是SWAT_Skeleton的原始姿态了)

b 调整目标骨架(SWAT_Skeleton)肩部位置(目的是保证目标骨架SWAT_Skeleton和 原骨架UE4_Mannequin_Skeleton初始姿态一致),然后记得保存,这里保存并不是点保存按钮,需要使用ModifyPose->UseCurrentPose。

注:modifyPose中貌似还可以使用PoseAsset来直接复制姿态,这个还有待研究

3 选择骨骼A的动画a,右键-> 重定位动画资产->赋值动画资产并重定位,然后选择骨骼B,

可以使用修改按钮,选择生成新动画副本的位置,默认指定的是Game文件夹

然后点重定向按钮,就会在指定位置生成新动画副本

未进行步骤2前,执行步骤3

进行步骤2后,执行步骤3

4 动画蓝图重定位跟动画操作基本一致

ue4 retarge记录的更多相关文章

  1. ue4 编辑器记录

    Matinee 编辑器 菜单:Add New Empty Group->选择要变动的Actor->菜单:Add Actor->菜单:Add Key->变更Actor属性-> ...

  2. UE4 Android打包 问题 记录笔记

    问题一:error: expression result unused [-Werror,-Wunused-value] 虽然看了输出日志知道了这行沉余代码删掉就行,但是不是很懂这个地方报错意义. 问 ...

  3. ue4 staticMesh属性记录

    Light Map Resolution 光照贴图分辨率 Generate Mesh Distancde Field 生成网格距离场(一种不怎么消耗性能的阴影) http://api.unrealen ...

  4. UE4材质特别属生记录

    tangent space normal 切线空间法线 材质默认使用的切线空间法线,可切换为对象空间法线(彩色贴图) Separate Translucency 单独半透明 允许半透明被渲染到一个单独 ...

  5. ue4配置分析记录

    相关代码 UObject::CallFunctionByNameWithArguments  ExecuteConsoleCommand << 配置.ini[???.类名]    //要先 ...

  6. [UE4]记录瞬移目标点

    1.判定射线是否击中一个物体:LineTraceByChannel的Return Value返回值 2.击中的目标点:LineTraceByChannel.Out Hit.Location,如图提示文 ...

  7. ue4 renderTexture简单记录

    示例内容中的renderTexture 抓取部分 1 新建一个TextureRenderTarget2D 2 抓图 新建actor,一个camera,下面挂一个SceneCaptureComponen ...

  8. ue4 官网IK流程记录

    基本流程 角色蓝图构造 角色蓝图 角色蓝图中新建的函数IK Foot Trace AnimGraph事件 这里注意下Make Vector时把z方向的偏移量设置到了X上 猜测原因是效应器的x方向跟世界 ...

  9. 【UE4游戏开发】安装UE4时报SU-PQR1603错误的解决方法

    马三在开发过程中一直用的都是UE4.9版本(很久没有更新了.),因为功能都够用,所以也懒得去更新.这不最近UE4 发布了最新的4.14版本,本来想尝个鲜,试试新版的UE引擎怎么样,结果这一安装上就一直 ...

随机推荐

  1. Coin和Token有什么区别

    在币圈,经常可以听到“coin”和“token”这些词汇,他们究竟分别代表什么,有什么区别呢?下面本文就和大家一起来扒一扒. 什么是coin? coin (包括山寨coin)是一种数字货币,它通过加密 ...

  2. PHP加Nginx实现动态裁剪图片方案

    许久以前写过一篇也是关于高性能PHP图片动态裁剪方案的文章,那文章使用的是nginx Cache和rewrite实现的,当然再加上CDN,那个方案存在一个问题就是图片并没有实际生成,而是以二进制的形式 ...

  3. DLL中导出ANSI和UNICODE函数

    模仿window中的DLL导出ANSI和UNICODE版本的函数,使用UNICODE宏来控制使用哪个版本: 在函数实际的执行代码UNICODE版本中,在ANSI函数的版本中只做参数的转换,及ANSI字 ...

  4. HDU - 3068 最长回文 【Manacher】

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=3068 思路 n^3 的做法 对于每个字符 同时 往左往右搜 但是要分奇偶 就是 n^3 n^2 的做法 ...

  5. 在Linux下搭建我的世界(Minecraft)服务器

    最近薅了百度云双12的羊毛,1核2G一年150.突然想起以前大学整个宿舍通宵开黑挖泥土的岁月,所以刚好趁着这台服务器,打算自己搭建一个我的世界服务器,重温一下以前的感觉. 超详细Linux搭建Java ...

  6. 51Nod 1627 瞬间移动 —— 组合数学

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1627 1627 瞬间移动  基准时间限制:1 秒 空间限制:1 ...

  7. Codeforces 854B Maxim Buys an Apartment:贪心

    题目链接:http://codeforces.com/contest/854/problem/B 题意: 有n栋房子从1到n排成一排,有k栋房子已经被售出. 现在你要买一栋“好房子”. 一栋房子是“好 ...

  8. Vue 数组中更新属性值后,视图不更新,等待其他元素更新后会触发的解决办法

    因为 JavaScript 的限制,Vue.js 不能检测到下面数组变化: 直接用索引设置元素,如 vm.items[0] = {}: 修改数据的长度,如 vm.items.length = 0. t ...

  9. cifs挂载远程文件出现 No such device or address错误

    1. 参考 https://www.raspberrypi.org/forums/viewtopic.php?t=82199 找了两天看到这个文章才解决了问题. 我是之前同事在windows上挂载成功 ...

  10. hdu1085Holding Bin-Laden Captive!组合问题

    题目连接 题目意思:有单位价值为1 2 5的三种硬币,分别给出他们的数量,求用这些硬币不能组成的最小的价值 解题思路:普通的母函数 普通的母函数: 利用母函数的思想可以解决很多组合问题,下面举例说明: ...