ドワーフのアニメーション再生を行うためにモデルアニメータを作成します。

○最初に2つのメンバ変数を作成します。
  1. // Add these as member variables
  2. ModelAnimator dwarfAnimator;
  3. Matrix view;
  4.  
○LoadGraphicsContent メソッドでドワーフのモデルをロードし、アニメータの新しいインスタンスを作成して下さい。
○ModelAnimator クラスはデフォルトで自動的にモデルをレンダリングします。しかしモデルに関連付けされているエフェクトにビュー行列とプロジェクション行列を設定する必要があります。
○LoadGraphicsContent メソッドでエフェクトを設定した後に注目してほしいことがあります。ドワーフがスキニングモデルで BasicPaletteEffect クラスをロードしていることに注意して下さい。
  1. protected override void LoadGraphicsContent(bool loadAllContent)
  2. {
  3. if (loadAllContent)
  4. {
  5. Model model = content.Load<Model>("dwarfmodel");
  6. dwarfAnimator = new ModelAnimator(this, model);
  7. Viewport port = graphics.GraphicsDevice.Viewport;
  8. view = Matrix.CreateLookAt(
  9. new Vector3(0, 15, -20), Vector3.Zero, Vector3.Up);
  10. Matrix projection = Matrix.CreatePerspectiveFieldOfView(
  11. MathHelper.PiOver4, (float)port.Width / port.Height, .1f, 100000f);
  12.  
  13. foreach (ModelMesh mesh in model.Meshes)
  14. {
  15. foreach (BasicPaletteEffect effect in mesh.Effects)
  16. {
  17. effect.View = view;
  18. effect.Projection = projection;
  19. }
  20. }
  21. }
  22.  
  23. }
  24.  

最終更新:2009年06月21日 18:36