D3D的动作融合
当游戏主角由走路变为跑步时,如果生硬的切换动作。会不真实。最常见的办法是将走路与跑步的动作进行插值融合。
今天做了一下这部分的工作。效果还不错。
原理就是:
D3DXMATRIX tLerpMatrix;
tLerpMatrix =(1 - vActionLerp)*tBoneMatrix + vActionLerp*tBoneMatrix2 ;
vActionLerp 是float型的插值 0~1间变化
tBoneMatrix是走路动作的当前帧的骨骼矩阵
tBoneMatrix2是跑步动作的当前帧的骨骼矩阵
最后用tLerpMatrix做为骨骼矩阵参与计算即可。