观察3DsMax中的坐标系发现:3DsMax使用右手系,默认Z轴朝上(传说中的:右手Z-UP坐标系)。同理,查阅相关资料得知:D3D使用左手Y-UP坐标系,而OpenGL使用右手Y-UP坐标系。
为了表示一个物体多个部件之间的层级关系,xfile使用Frame模板定义每个部件。每个Frame模板由两个子模板组成:Mesh和FrameTransformMatrix,Mesh定义所有顶点乘以“世界初始变换矩阵”,得到物体的初始位置。
部件完整变换矩阵 = 部件初始变换矩阵 * 部件运动变换矩阵 * 部件父部件运动变换矩阵