2012-09-09 70 views
1

我想在XNA中導入一個與攪拌器一起導出的.fbx模型。Xna模型零件重疊其他

這裏是我的繪製代碼

public void Draw() 
    { 
     Matrix[] modelTransforms = new Matrix[Model.Bones.Count]; 
     Model.CopyAbsoluteBoneTransformsTo(modelTransforms); 

     foreach (ModelMesh mesh in Model.Meshes) 
     { 
      foreach (BasicEffect be in mesh.Effects) 
      { 
       be.EnableDefaultLighting(); 
       be.World = GameCamera.World * Translation * modelTransforms[mesh.ParentBone.Index]; 
       be.View = GameCamera.View; 
       be.Projection = GameCamera.Projection; 
      } 
      mesh.Draw(); 
     } 
    } 

的問題是,當我開始比賽的一些模型部分上覆別人而不是被後面。我試圖從互聯網下載其他模型,但他們有同樣的問題。

+0

[這裏](http://gamedev.stackexchange.com/questions/37555/xna-model-parts-are-overlying-others),你可以找到答案(也閱讀評論) –

回答

0

這條線:

be.World = GameCamera.World * Translation * modelTransforms[mesh.ParentBone.Index]; 

通常arrainged周圍的其他方法,而且你乘將會使結果不同的矩陣的順序。試試這個:

be.World = modelTransforms[mesh.ParentBone.Index] * GameCamera.World * Translation; 
+0

謝謝你的回答,但它沒有奏效,問題依然存在 –