0

XNA で静的モデルを回転するにはどうすればよいですか? モデルは「ModelManager」と呼ばれる別のクラスにロードされます。

「track_new」というモデルを回転させる必要がありましたが、他のモデルと一緒にまとめて保存されています。ローテーションは「modelManager」クラスまたはメインの「Game!.cs」ファイルの下に移動しますか?

これが私のコードです:

public class ModelManager : DrawableGameComponent
{
    List<BasicModel> models = new List<BasicModel>();

    public ModelManager(Game game) : base(game) { }    
    public override void Initialize()
    {
        base.Initialize();
    }

    protected override void LoadContent()
    {
        models.Add(new BasicModel(Game.Content.Load<Model>(@"Models\track_new")));
        base.LoadContent();
    }

    public override void Update(GameTime gameTime)
    {    
        for (int i = 0; i < models.Count; ++i)
                models[i].Update();
        base.Update(gameTime);
    }

    public override void Draw(GameTime gameTime)
    {       
        foreach (BasicModel bm in models)
            bm.Draw(((Game1)Game).camera);
        base.Draw(gameTime);
    }
}
4

1 に答える 1

0

Model.Drawメソッドは World および View マトリックスを受け入れます。必要な効果を得るには、そのモデルだけに別の World マトリックスを指定できるはずです。

于 2012-12-12T15:49:39.947 に答える