3DS文件和X文件

  今天在学习RenderMonkey的Sample的时候,发现大多数fx文件中大多数使用了3ds文件,但是在DX中却是只使用.x文件。好歹以txt格式进行保存的.x文件是明文,这就便于分析.x本身的结构和DirectX的模型。

  所以问题来了,怎么将3ds转换成x文件呢?狗狗了一下,大概有三种方法吧:

1.当然是在3DMAX中使用X文件的输出插件,直接将3ds文件转存为x文件,这个我没有尝试过,不过猜想应该不会有什么问题;

2.使用conv3ds.exe,这个是微软的DirectX SDK本身提供的工具,可以将3ds转换成x文件。但是这个程序似乎是只在DirectX8中存在的,后面的DX9/DX10好像都没有了,而且本身在DirectX8中都已经算是Old Utility了。更大的问题是,使用这个工具转换出来的.x文件根本不是不是可读的明文,而是二进制数据。你可以看到在文件中的头文件标识是bin而不是txt。除此之外,似乎转换出来的.x文件和原始.3ds文件还是有一些差别,例如模型尺寸和坐标系,导致在RenderMonkey中使用转换出来的.x文件的时候,会和想像中的结果不一样。

3.使用一个名叫"3D Exploration"的工具,这个工具支持很多3D模型文件而且可是实时渲染观察模型结果,并且可以在不同的模型文件之间进行转换。这里就使用它将3ds文件转换成x文件,并且替换到RenderMonkey中Sample中,渲染结果是一致。并且得到的.x文件也是明文,这似乎是正确的x文件了。

你可能感兴趣的:(文件)