在计算机平台上,常用的3D模型有3DS,OBJ,MD2,MD3,MS3D等多种格式。这些格式在存储方式上存在很大的差别,但基本思想大同小异。3D模型又分为静态模型(如3DS,OBJ)和动态模型(如MD2,MD3,MS3D)。在动态模型中除了保存模型的定点和表面数据外,还有与动画相关的信息,这些动态模型渲染起来较为复杂。
我以前有加载过MS3D文件里面的骨骼动画,大概思路是这样的:在VC++或者其他平台上用OPENGL及C/C++ 把MS3D骨骼动画文件加载进来,加载进来的东西主要有骨骼帧、节点关系、蒙皮等,这些MS3D文件的介绍里都说得比较明白。加载这些数据进来后,对这些文件进行操作并在骨骼帧之间进行插值,以实现动画。
MDL文件照理来说应该是用来做骨骼动画中比MS3D还要好的文件格式,但是它的文档比较难找到,而MS3D的文档比较容易得到。你可以参照一本书<<Focus on 3D Models>>,这本书里面讲得很详细。