Posefitting适配角色姿势
发布于:2024-10-18
1. 功能描述
1.1 两种适配方案
提供两种适配姿势(适配角色姿态,将服装穿到角色身上)方法:服装蒙皮、仿真过渡(posefitting)。
方法 | 原理 | 优点 | 缺点 | 适用场景 |
服装蒙皮 | 通过服装蒙皮将服装从Apose适配到角色当前姿态 |
|
| 【要求】 服装无纽扣 小幅度动作 【适用】 编辑器场景使用 |
仿真过渡posefitting | 通过服装仿真将服装从Apose逐步过渡到当前姿态 |
|
| 【无要求】 任意服装与动作 【适用】 打包SDK做成客户端产品 |
1.2 posefitting
posefitting是一种更为通用的姿态适配方案,更适用于集成SDK打包成自动化通用型产品。
实现在 Unreal 编辑器中,只需要给人模 APose 穿好衣服,其他 Pose 可以通过仿真过渡,得到穿衣效果。
2. 操作步骤
适配方案一:posefitting
勾选Enable Pose Fitting
确保Enable Posefitting选项开启
EnablePoseFitting | 是否启用 PoseFitting |
ShowPoseFittingNotification | 展示Posefitting进度提示 |
APoseAsset | 角色的APose(角色默认姿势) |
PoseFittingDuration | PoseFitting 过渡时长,一般默认值 3s 钟就可得到很不错的结果 复杂姿势或需要更好的适配效果,可设置更长过渡时间 |
Finish Hold Duration | Pose fitting完成后,可设置一段额外时间继续解算,获得更稳定的适配结果 |
GarmentCapture | Pose fitting完成后保存的适配结果 |
点击 Pose Fitting 按钮
点击Posefitting
PoseFitting | 开始Pose fitting适配当前姿势 |
SaveAsMesh | 将当前适配结果存储为StaticMesh静态网格 |
Use Exist(2.4.0新功能) | 点击后,可直接匹配已有的Posefitting结果,运行时就不需要重复Posefitting |
重要提示:
1)使用posefitting时,求解器参数设置中Time Step时间步长不能设置为0
2)设置动画播放倍率会影响posefitting结果,比如动画设置了0.5倍速,则posefitting的结果不为角色动画初始帧姿态
适配方案二:Bind蒙皮适配
1、开启Use Ref Pose
Bind Property中开启Use Ref Pose使用默认姿势
Metahuman角色不能使用Use Ref Pose。需取消勾选,角色不添加动作资产,再进行Bind、Save
2、点击Bind Save
3、切换不同角色动画,点击preview In Editor 预览适配效果
预览Bind蒙皮适配效果时,需关闭Enable Posefitting,否则预览的是posefitting的适配效果
2.3 posefitting适配与蒙皮适配的切换
通过Posefitting Setting中Enable Pose Fitting选项控制是否启用posefitting,启用后点击posefitting即开始仿真过渡。
未启用posefitting时,通过Garment中Preview in Editor选项使用服装蒙皮,服装蒙皮前置操作( Bind Garment 和 Save Garment)见模拟仿真文档
2.4 多个Posefitting结果的应用(V2.4.0)
编辑器中提前设置不同服装,在不同动作下点posefitting,可以存储不同的Posefitting结果文件
下次解算时,切换服装或切换动画,点击Load按钮,就会自动加载之前设置的Posefitting结果
在蓝图中也可直接调用提前存储下拉的Posefitting结果
存储路径:Content-Style3D-GarmentCapture
文件以服装名+动作名区分
蓝图中使用Posefitting结果: