私は XNA (および一般的な C#) を学んでおり、学習目的で独自の小さなサイドスクローラーを作成しようとしているときに、次の問題に遭遇しました。
レベルはタイルから構築されます。インスタンス化のたびにタイルにテクスチャを渡したくないので ( のようにreturn new Tile(positionVector2, TEXTURE)
)、クラスはデフォルトでこのテクスチャを使用して構築する必要があります。
今、私はそれを機能させることができません。次のようにコンストラクターを使用しようとしました:
public Tile(Vector2 position)
{
this.texture = Platformer03.Texture;
}
ここPlatformer03
で、 はゲーム クラス、Texture はロードされたタイル テクスチャのプロパティです。Platformer03
はクラスでありインスタンスではないため(静的ではない)、これは明らかに機能しませんが、(game1と呼ばれますが、範囲外です)のインスタンスを見つけることさえできませんPlatformer03
。
だから私はこれをすべて間違っていると確信していますが、各インスタンス化で特定の texture2d を使用するように Tile クラスを取得するにはどうすればよいですか?
これ以上ばかげた質問はおそらく想像できないかもしれませんが、優しくしてください。