首页 理论教育 关键动作状态迁移计算

关键动作状态迁移计算

时间:2023-10-31 理论教育 版权反馈
【摘要】:从源角色的运动中获得的骨骼状态称为关键动作状态,是角色运动过程中标准的动作状态,类似于动画制作中的关键帧。关键动作状态迁移中目标角色关节点位置求取的原理如图5-6所示,通过同步旋转角的方法,剔除了两角色骨骼长度不同的影响。

关键动作状态迁移计算

从源角色的运动中获得的骨骼状态称为关键动作状态,是角色运动过程中标准的动作状态,类似于动画制作中的关键帧。关键动作状态的迁移过程可描述为

(1)针对源角色的每个关节点,根据关节点位置和前后两侧关节点位置,计算该关节点的旋转角;

(2)将旋转角同步到目标角色的对应关节点上;

(3)旋转角同步完毕,针对每一条关节链,根据旋转角更新关节点的位置,从而求得整个骨骼框架中的关节点新位置。

关键动作状态迁移中目标角色关节点位置求取的原理如图5-6所示,通过同步旋转角的方法,剔除了两角色骨骼长度不同的影响。图中的P0P1P2P3为源角色的一条关节链,Q0Q1Q2Q3为目标角色中与之对应的关节链。

978-7-111-33883-3-Chapter05-7.jpg

图5-6 关键动作状态迁移原理图

根据其骨骼框架查找各关节点两侧相连的骨骼,由相连的三个关节点的位置,计算中间关节点的旋转角,该旋转角用式(5-2)进行计算,即

978-7-111-33883-3-Chapter05-8.jpg

式中,αBet是两骨骼之间的几何夹角;978-7-111-33883-3-Chapter05-9.jpg978-7-111-33883-3-Chapter05-10.jpg分别是从当前关节点P0出发的两侧骨骼向量;lengthllengthr分别是它们的长度;flag是旋转角是否大于180°的标志,其计算见式(5-3),(x0y0)、(xlyl)和(xryr)分别是当前关节点与上下关节点在视频中的对应点位置坐标。(www.xing528.com)

978-7-111-33883-3-Chapter05-11.jpg

根据旋转角αBone和虚拟角色的骨骼长度,可以利用式(5-4)计算当前关节点的下一关节点位置,其中α即为关节点旋转角。

978-7-111-33883-3-Chapter05-12.jpg

当某一关节点的旋转角发生变化,则从该点开始,同一链的关节点都需要重新计算其位置,最终可以得到对应于当前动作状态的虚拟角色动作状态。

关键动作状态的迁移步骤可以描述为

(1)通过P0P1P2点的位置计算αBone

(2)使用该角度设定2D虚拟角色中Q1的旋转角,使978-7-111-33883-3-Chapter05-13.jpg

(3)根据Q0Q1的位置计算Q2的新位置;

(4)使978-7-111-33883-3-Chapter05-14.jpg,实现Q0Q1Q2部分的姿态与P1P2P3部分相同。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈