学习3ds max插件开发过程当中的一些小结

1. 3ds max是以树状结构来管理整个场景的,每一个树节点类型为INode动画

2. Interface类很关键,能够经过其中的GetRootNode、NumberOfChildren和GetChildNode方法来遍历整个场景的全部节点3d

3. 在max中一个物体是object而不是INode,Object是附着在INode上的,而且Object的坐标所在的坐标系是INode的local坐标系ip

4. INode::GetNodeTM方法返回INode到世界坐标系的变换矩阵,INode::GetObjectTM方法则返回了附着在INode上的Object到世界坐标系的变换矩阵pip

5. 要想获得INode到其父INode的变换矩阵,首先经过INode::GetParentTM方法获得其父节点到世界坐标系的变换矩阵,接着计算INode::GetNodeTM(t) * Inverse(INode::GetParentTM(t))便可获得节点变换到父控件的变换矩阵了object

6. 当咱们在max里面制做了人物动画后,须要将整个动画数据导出来的时候,须要调用INode::EvalWorldState方法,此方法可返回INode在t时刻通过max pipeline处理后的状态,咱们能够获得此时刻动做下INode节点的变换矩阵,而后就能够自行处理成引擎所须要的格式便可遍历

相关文章
相关标签/搜索