0

私はxnaから始めており、これはかなり初心者ですが、このフレームワークを継続するように努力しています。とにかく、私の問題は、多くの.png画像があり、オブジェクトを作成したくないということです。それらの画像のいずれかについて、それらを配列に配置したいのでTexture2D、これがそれを行う方法だと思いましたが、それは正しい方法ではないようです:

Texture2D[] _rCards, _bCards, _sCards;
_bCards = new Texture2D[9]; 
_rCards = new Texture2D[9];
_sCards = new Texture2D[6];

for (int i = 1; i < 10; i++)
{
    _bCards[i] = Content.Load<Texture2D>("Images/Common/Black/"+i);
    _rCards[i] = Content.Load<Texture2D>("Images/Common/Red/"+i);
    if(i<6)
        _sCards[i] = Content.Load<Texture2D>("Images/Special/Card" + (i-1));
}

テクスチャのファイル名は、1.png、2.png、3.pngなどです。

特別なカードには、card1.png、card2.png、card3.pngなどがあります。

ブラックジャックゲームを作ろうとしています。

このすべてのテクスチャを1つのtexture2D配列にロードするためのアドバイスを教えてください。

IDEはNULLREFERENCEEXCEPTIONの問題か何かを与えます。

たぶん、言語は、テクスチャを文字列として見つけるために住所全体を理解していません。

4

1 に答える 1

2

インデックスは0ベースです...

for (int i = 1; i < 10; i++)
{
  _bCards[i-1] = Content.Load("Images/Common/Black/"+i);
  _rCards[i-1] = Content.Load("Images/Common/Red/"+i);
   if(i<6) _sCards[i-1] = Content.Load("Images/Special/Card" + (i-1));
}

すべてのテクスチャを同時にロードする場合は、スプライトシートのサンプルを使用できます。

http://create.msdn.com/en-US/education/catalog/sample/sprite_sheet

スプライトを描画するための一意のアセットとソース長方形の辞書があります...

于 2012-05-22T18:30:14.783 に答える