ページ 11

XNAでの描画の分割について

Posted: 2012年12月22日(土) 01:45
by ちう
こんばんは、ちうといいます。

今回、初めてXNAというライブラリ?を使用してゲームを作ってみようとしています。
しかし、DXライブラリと仕様が大きく違うため(当たり前ですが)かなり面食らっています。

まだ、画像の描画や音楽再生程度の基礎的な部分しか触れていませんが、そこでどうしても分からないことが出てきたため質問します。

新規プロジェクトからXNA4.0で新規作成すると、骨格が生成されます。
そして、その骨格となるものの一部に

コード:

  /// <summary>
    /// LoadContent はゲームごとに 1 回呼び出され、ここですべてのコンテンツを
    /// 読み込みます。
    /// </summary>
        protected override void LoadContent() {
            // 新規の SpriteBatch を作成します。これはテクスチャーの描画に使用できます。
            spriteBatch = new SpriteBatch(GraphicsDevice);

                // TODO: this.Content クラスを使用して、ゲームのコンテンツを読み込みます。

            //mTexture = Content.Load<Texture2D>("dat/graph/EDGE1");

        }
と言ったものがあります。

そこで2つ質問があります
1。この Content.Load<Texture2D>というメソッド、DXライブラリではLoadGraph()に相当するようなものなのですが、
これは骨格のクラス内でしか呼べず、別のクラスで画像をロードすることは出来ないのでしょうか

2。コメントに「LoadContent はゲームごとに 1 回呼び出され、ここですべてのコンテンツを読み込みます。」
 という記述がありますが、これはゲーム開始時に一度だけしか呼び出せない。つまりはゲームの途中で
 画像を読み込むことは出来ないということでしょうか


回答よろしくお願いします

Re: XNAでの描画の分割について

Posted: 2012年12月22日(土) 01:55
by h2so5
同じような質問を見つけました。
http://gamedev.stackexchange.com/questi ... oadcontent

結論から言うと、グラフィックデバイスが初期化された後ならどこでも画像をロードすることができるようです。
2つの質問は両方とも「可能」ということです。

Re: XNAでの描画の分割について

Posted: 2012年12月22日(土) 04:08
by ちう
h2so5さん、回答ありがとうございました。

私は、こういった質問サイトがあることは知りませんでしたので、

以降何か手詰まりがあった時はこちらのサイトも参考にさせていただこうかと思います。

また、今回の問題は、とあるサイトを参考に、骨格のシングルトンを作ってしまい、そこからインスタンスをひっぱってきて使用するという方法を取ることで解決することができました。