1

Andrew Russell の ExEn プロジェクトについて読んでいて、WP7 加速度計ベースのゲームを作成し、それを iOS などの別のプラットフォームに移植するフローがどのようなものになるのか疑問に思っています。これが私が望むことです:

  1. XNA で完全に機能するゲームを作成し、「戻る」ボタンなどのデバイス固有のアイテムへの依存を回避します。
  2. ExEn を介してプロジェクトを実行し (これがどのように行われるかはわかりません)、完全に機能する iOS ゲームを作成します。
  3. iPhoneでゲームを実行します。

その哀れなアウトラインで申し訳ありませんが、それについて読んだ後、私は確かな高レベルの見解を持っていません.

また、ソフトウェア変換なので、完全に機能しないことは間違いありません。しわをどのようにアイロンをかけますか?それを突き止めるには、iOSまたはAndroidをかなりよく知っている必要があると思います。

とにかく、誰かが私を一歩近づけることができれば、私はそれを感謝します.

4

2 に答える 2

2

ExEnは、さまざまなプラットフォーム (iOS や Android を含む) で実行される XNA APIのサブセットの実装です。簡単に言えば、XNA コードを記述するときに使用するクラスとメソッドを、これらの他のプラットフォームで使用できるようにします。(さらに、適切な指示、例など)

ExEn を使用する場合、コードの大部分は単純に「正常に機能する」必要があります。ただし、ほとんどの実際のケースでは、少なくともプラットフォーム固有のコードを記述する必要があります (おそらく、プラットフォーム固有のアセットを提供する必要があります)。特に、さまざまなデバイスの解像度をサポートするため、および ExEn では利用できない XNA 機能を使用する場合にも使用されます。

執筆時点では、ExEn は加速度計サポート用の XNA/WP7 API を実装していません。将来のある時点で、それらが追加される可能性があります (私またはパッチを提供したい人によって)。ExEn はソース コードとして配布されるため、必要なサポートを自分で追加することもできます。

別の方法は、加速度計をクエリするゲームの部分にプラットフォーム固有のコードを記述することです。ExEn を使用しても、基盤となるプラットフォームの API を使用できなくなるわけではありません。

ExEn (iOS および Android 上) は、Xamarin のMonoTouch および Mono for Android 製品の上で実行されます。これら 2 つの製品は、基盤となるプラットフォーム API の C# バインディングを提供します。また、ExEn が XNA API を実装するように、Mono は .NET API を実装します。これらの製品は、必要なツール (IDE、コンパイラ、デバッガなど) も提供します。

したがって、使用する iOS API はUIAccelerometer( doc ) です。MonoTouch.UIKit.UIAccelerometerこれは、 ( doc )を介して C# で公開されます。演習として、Android に相当するものを調べることはやめておきます。

于 2011-09-06T16:07:06.277 に答える
0

期待できない:

  • ゲームを他のプラットフォームに移植し、変更しないでください。
  • 特殊なプラットフォーム固有の能力を持つゲームを、この能力を持たない他のプラットフォームに移植する、またはその逆
于 2011-09-06T14:35:05.047 に答える