【UE5.3】为人形角色建立Contrl Rig

目录

步骤

一、创建控制绑定

二、添加控制点

[2.1 root 控制点(FK)](#2.1 root 控制点(FK))

[2.2 骨盆 控制点(FK)](#2.2 骨盆 控制点(FK))

[2.3 脊椎、脖子、头 控制点(FK)](#2.3 脊椎、脖子、头 控制点(FK))

[2.4 手、手肘 控制点(IK)](#2.4 手、手肘 控制点(IK))

[2.5 脚、膝盖 控制点(IK)](#2.5 脚、膝盖 控制点(IK))

[2.6 脚趾 控制点](#2.6 脚趾 控制点)

三、制作自定义动画序列


步骤

一、创建控制绑定

右键点击骨骼网格体,点击"创建-》控制绑定"

系统自动生成一个控制绑定

这里我命名为"CR_DKM"

二、添加控制点

2.1 root 控制点(FK)

打开"CR_DKM"可以对根骨骼新建一个控制点"root_ctrl"

设置该控制点的颜色、形状、旋转、缩放

为了让控制点"root_ctrl"能够控制对应的骨骼,这里需要在"向前解析"中获取控制点的transform,然后将控制点的transform赋给骨骼的transform

注意控制点和骨骼层级要独立开来,因此这里需要取消"root_ctrl"的父子关系,让"root_ctrl"和"root"处于同一层级

此时在预览视口中可以看到,当我们移动控制点的时候,对应root骨骼也会跟着移动:

2.2 骨盆 控制点(FK)

添加一个控制骨盆的控制点,命名为"pelvis_ctrl",用于控制骨骼"pelvis"

设置控制器的形状、颜色、旋转和缩放如下:

同样的,在"向前解析"中获取控制点的transform,然后将控制点的transform赋给骨骼的transform

2.3 脊椎、脖子、头 控制点(FK)

脊椎、脖子、头的骨骼如下,我们用上述同样的方式来创建它们的控制点

创建后如下

每个控制点的形状、颜色、旋转、平移和缩放设置如下:

在"向前解析"中获取控制点的transform,然后将控制点的transform赋给它们对应的骨骼transform

此时可以看到我们可以通过控制点控制脊椎、脖子和头了:

2.4 手、手肘 控制点(IK)

先添加左手的控制点,这里命名为"hand_ik_l_ctrl"

设置控制点形状和颜色

对左手手肘添加控制点

这里命名为"elbow_pv_l_ctrl"

设置控制点"elbow_pv_l_ctrl"的偏移和颜色

在图表中添加如下节点,利用上面两个控制器(手部位置+肘部朝向),自动反算出整条手臂(大臂+小臂)的动作姿态

如下图所示

  • 项目A (upperarm_l / 左大臂):IK 链的起始点(肩膀)。

  • 项目B (lowerarm_l / 左小臂):IK 链的中间关节(肘部所在的骨骼)。

  • 执行器项目 (hand_l / 左手):IK 链的末端,也就是我们要移动的目标骨骼。

  • 执行器 (Effector):这是IK 控制器,当移动这个控制器时,Basic IK 节点会读取它的位置,并强制让 hand_l 骨骼去追踪这个位置。

  • 极向量 (Pole Vector):这是肘部朝向的控制器,有了它就可以控制手肘是向外拐、向下拐还是向上拐。如果没有极向量,手臂虽然会够到物体,但手肘可能会乱转。

  • 轴向设置 (次要轴/Secondary Axis):

    • 图中 Y: -1.0。这是告诉求解器,骨骼的弯曲方向(膝盖或手肘的朝向)是沿着骨骼的哪个轴。这取决于你的骨骼在建模软件(如 Maya/Blender)里是怎么建立坐标系的。

同样的方式继续添加右手和右手肘的控制点

在图表中添加右手的基本IK

我们还可以在手肘和控制点之间连接线

通过添加绘制线条节点实现

此时通过控制点就可以控制左右手和手肘了

2.5 脚、膝盖 控制点(IK)

和2.4类似,增加脚和膝盖的控制点

图表中的节点也和2.4类似

此时我们就可以通过控制点控制脚和膝盖了:

2.6 脚趾 控制点

添加控制点"toe_pivot_l_ctrl"、"ball_l_ctrl"、"toe_pivot_r_ctrl"、"ball_r_ctrl"如下图所示。其中"toe_pivot_l_ctrl"、"ball_l_ctrl"对应的骨骼都是"ball_l","toe_pivot_r_ctrl"、"ball_r_ctrl"对应的骨骼都是"ball_r"

设置控制点的形状、颜色、旋转和缩放如下:

在2.5节的图表基础上做如下修改

此时我们就可以做出自然的抬脚动作

三、制作自定义动画序列

将骨骼网格体拖入关卡序列

添加控制绑定,选择上面制作好的Control Rig

选择后自动进入动画模式

打上关键帧

烘焙动画序列

烘焙后打开动画序列效果如下:

参考视频:

https://www.bilibili.com/video/BV1F94y1D7NM?spm_id_from=333.788.player.switch&vd_source=1279114347cba25192f0e30b8cf0e95f

相关推荐
zhangzhangkeji4 天前
UE5 C++(71):文件是否存在,文件夹是否存在,FPaths :: FileExists( const FString & InPath) ;
ue5
妙为4 天前
UE5角色穿过石头穿模
ue5·unreal engine5·角色穿越石头·穿模
技术策划Boring5 天前
2025年工作复盘:开放世界3A项目配置管线与性能监控的探索
游戏·ue5·虚幻·p4·perforce
zhangzhangkeji7 天前
UE5 C++(70-2):定义成员函数 getCleanDirectory(..) 和枚举类 EFileDirectoryType,来获得目录
ue5
avi91118 天前
UE4-UE5虚幻引擎-前置学习三,优化,基础CPP
ue5·ue4·游戏开发·虚幻·游戏优化·游戏代码
zhangzhangkeji8 天前
UE5线程进阶(3-2):任务图的相关源码整理。 FGraphEvent 与 TGraphTask 的区别和联系
ue5
zhangzhangkeji10 天前
UE5线程进阶(3-1):
ue5
zhangzhangkeji10 天前
UE5线程进阶(2-3):enum ENamedThreads命名空间 :: Type : int32 { RHIThread = 0 } 是渲染硬件接口线程
ue5
zhangzhangkeji11 天前
UE5线程进阶(2-1):枚举类EAsyncExecution,作业类TAsyncRunnable、TAsyncQueuedWork,及全局线程函数 Async(..),及线程调用的 4 种方法总结
ue5
zhangzhangkeji12 天前
UE5线程进阶(1):
ue5