DirectX9 3D 快速上手 4

作者:袖梨 2022-07-02
接下来我们要使用Mesh读入.X文件,关于.X文件,其实可以说很多,我们可以用外部的工具例如3DS MAX来建立.3ds文件,然后利用微软提供给我们的工具转换成.X文件,如果你同时会用3DS你也许会问,那材质怎么办? 你不用担心,.X文件能自动的包含材质,和动画,所以利用Mesh我们可以方便的八我们在3DS MAX的做品用在游戏中。
.X文件允许自定义的扩展,当然这个我们在以后的内容也会讲到,我们先看怎么使用,顺便提一句,还有一种用得比较多的文件格式.Md3格式的文件,也就是Quake3使用的文件,如果有机会我也会讲到。
关于3DS文件和.X转换可以参看GameRes网站的文章http://www.gameres.com/Articles/Program/Visual/3D/3DinApp.htm
 
接下来的过程简单的让你无法相信,请看:
     private Mesh mesh = null; //建立Mesh对象
     private Material[] meshMaterials;  //用于保存材质
     private Texture[] meshTextures;     //用于保存纹理
     private void LoadMesh(string file)
     {
         ExtendedMaterial[] mtrl; //保存Mesh子集信息,保存Material信息
            // Load our mesh
         mesh = Mesh.FromFile(file, MeshFlags.Managed, device, out mtrl);
         // If we have any materials, store them
         if ((mtrl != null) && (mtrl.Length > 0))
         {
             meshMaterials = new Material[mtrl.Length];

相关文章

精彩推荐