Learned Motion Matching-动作生成算法

Learned Motion Matching

来源: SigGraph2021
研究方向: 动作生成
链接: https://dl.acm.org/doi/pdf/10.1145/3386569.3392440

Motion Matching如今已经是3A游戏处理locomotion的主流方法了。

文章动机

  • 一个传统的motion matching算法可能分为一下几步。用户输入控制信号后,将其投影到特征空间,然后在这个特征空间中找到与其最相近的特征x,然后进一步找到特征x对应pose,将pose输出,就完成来初始动作下,输入控制信号,让人物的状态进行转移的任务。经历若干个step后,再根据控制信号寻找合适的motion,而motion之间的transition,则直接通过blending进行平滑过渡。
  • 可以看到,motion matching分为三个部分,第一步是找到合适的特征空间,然后在这个特征空间中根据输入信号找到最近邻;第二步是解压缩,要把查找到的目标feature重新映射回反正的目标动作;第三步是stepping,根据当前的状态,逐步的推出下一个state的feature以及解压缩出pose。
  • 而上面提到的第一步的特征匹配,寻找最近邻的过程是需要数据库支持进行匹配的,难免内存开销会很大;此外根据查找的feature重新解压缩pose的过程也不一定能完美的进行还原,因此就有了learned motion matching的这篇文章。

方案实施

在这里插入图片描述
在这里插入图片描述

  • 可以看到,相较于基础版的motion match算法,learned motion matching算法中加入在由feature解压缩动作时,额外添加了隐变量z来作为新添加的特征,具体的,这个z由将x作为输入,通过一个auto encoder学习到的,然后通过x和z,共同将pose还原出来。
  • 在Stepper部分,对于传统的motion matching,就是根据x对应的motion库中的index,直接增加index,就能得到下一帧的pose了。但是LMM需要把这个motion库给去掉,所以作者train了一个自回归的网络,能够根据当前的x和z,来推测下一时刻的x和z。
  • 最后是Projector部分,这一块,是期望将motion matching寻找最近邻feature的部分,通过学习的方式得到。原始的方法需要存储所有可能的x和z,而learning的方法,通过sample各种可能的用户输入(x帽),然后寻找最近的x和z,组成pair的数据,从而可以train对应的projector,

方案可行性

结论

LMM模型结合和神经网络和现有motion matching方法可扩展性强的有点,在动作质量,性能以及内存使用上取得了SOTA的效果。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值