我有使用矩阵运行许多骨架动画的代码,我想将其转换为双四元数,以获得更好的性能。
我只有一个问题 - 我找不到如何处理任意比例的好资源。
我不太明白骨架层次结构中的比例是如何进行的。
让我们对骨架中的每个节点说,我有它的局部双四元数(旋转+平移)和一个3D矢量用于缩放,我该如何处理这些尺度?
答案 0 :(得分:0)
骨骼动画和比例,特别是非均匀比例,是一个棘手的主题。
使用骨骼层次结构的标准实现,每个骨骼有一个矩阵,比例只是传播给儿童,这通常被视为不需要的行为 - 传播非均匀比例会导致儿童骨骼的剪切和其他变形,这会导致奇怪的伪影在剥皮。出于这个原因,它经常在子矩阵上“补偿” - 例如,请参阅此概念的Autodesk Maya implementation。
为了很好地描述将非传播尺度集成到双四元数中,有几个academic papers by Ladislav Kavan提供了很多细节。他还在youtube上有关于双四元数的演讲。