主要参考书目:《计算机动画算法与技术》《3D游戏》(英国人写的书已经绝版了)《3D游戏引擎设计——实时计算机图形学应用方法》 《骨骼蒙皮动画(Skinned Mesh)的原理解析》
关节就是一个变换矩阵,在层次储存中,一般会从根节点开始一层层的储存关节矩阵:
所以每个关节储存的矩阵都是建立根关节之上的。
以3个关节为例,转换如下:
—(T0世界矩阵)—>Link0—(T1相对Link0的Link1转换,相对旋转R0)—>Link1—(T1.1相对Link1的Link1.1转换,相对旋转R1)—>Link1.1
另外每个关节的变换无非就是旋转加平移。
故,设有一在Link1.1的坐标中有顶点V,那么将其转换到世界坐标V’就是:
V ′ = T 0 ∗ T 1 ∗ R 1 ∗ T 1.1 ∗ R 1 ∗ V V' = T0*T1*R1*T1.1*R1*V V′=