8

MonoGame (私は Mac を使用しているため、XNA の代わりに使用します) をダウンロードして解凍すると、すべての MonoDevelop ソリューション ファイルの名前MonoGame.Framework.[PLATFORM NAME].sln[PLATFORM NAME]、まあ、OS の名前になります。また、チュートリアルのコードはプラットフォームごとに異なるため、MonoGame アプリを別のマシンで実行するには、移植する必要があるようです。これは正しいです?もしそうなら、Xbox 360 で動作する Mono 用の XNA の他のバージョンはありますか? 私は MonoXNA を見たことがありますが、この記事の時点では使用できるほど成熟していないようです。

4

1 に答える 1

14

MonoGame は、複数のプラットフォームで XNA API を提供することにより、コードをクロスプラットフォームにします。(ただし、Flash や Java のように、コンパイルされたバイナリクロスプラットフォームは作成されません。)

MonoGame自体は、プラットフォームごとにバージョンがあるという意味で、クロスプラットフォームではありません。各バージョンには、そのプラットフォーム用の XNA API を実装するために必要なプラットフォーム固有のコードが大量に含まれているためです。

(実際には、かなりの量の MonoGame コードクロスプラットフォームであり、異なる MonoGame バージョン間で共有されています。これは、MonoGame と同様に、Mono、OpenGL、OpenAL などのレイヤー上に構築されており、MonoGame のように、異なる基盤となる実装で一貫した API を提供するためです)プラットホームで。)

これは、Microsoft の公式の XNA 実装とまったく同じです。XNA ライブラリには 3 つの異なるバージョンがあります (Windows、Xbox 360、および Windows Phone)。それらはすべて XNA API を提供します。また、XNA API を使用するコードは、これらのプラットフォームのいずれでもビルドできます。


MonoXNA はかなり時代遅れであり、その有用なコードのほとんどはとにかく MonoGame に組み込まれています。

私の知る限り、Mono を使用して OSX で実行する現在の XNA 実装は他にありません。Mono を使用するExEnがありますが、iOS と Android のみです。

Xbox 360 で XNA を使用するための唯一のオプションは、Microsoft のバージョンを使用することです。しかし、これは MonoGame に対してコードをコンパイルすることを妨げるものではありません。

于 2012-07-09T15:38:33.603 に答える