2012-04-24 10 views
0

私は800×480の解像度を対象としたゲームを作成しましたが、他のWP7解像度にも対応したいと考えています。また、MonoとExEnを使ってiPhoneやAndroidにゲームを移植することができると聞きました。WP7 XNAゲーム:どのように異なる電話の解像度に適応するには?

これに対処する適切な方法は何ですか?私はゲームをスマートにして、画面サイズを検出し、できるだけ元のように見えるようにアセットを変更し、同じものを再生するようにしたいと考えています。

これは2Dゲームであり、私は理想的にはすべての解像度で別々の画像を持つようになると思いますが、将来的にはこれはうまく動作しません。私は800×480のベースラインを考え、最初にサイズを検出し、すべてのエンティティの境界を拡大縮小して、それらのテクスチャを単純に描画してみました。これにより、私は正確に衝突検出を行い、テクスチャをスケールすることができますが、より良い方法があります。

とにかく、問題をはっきりと説明していただきたいと思います。そうでない場合は、コメントが入った後に質問を編集します。

あなたのご意見ありがとうございます。

+2

Windows Phone 7には800x480の解像度が1つありますので、すでに問題があります。 –

答えて

3

Windows Phoneで複数の解像度がサポートされている場合(または、この回答を参照して真のマルチ解像度エンジンを作成する場合)、ここに着陸する人々の利益のために、これは私のやり方です。

利用可能な解像度を列挙して確認し、すでにわかっているアスペクト比の解像度の正投影を設定します。この目的のために、私は自分のゲームをテストしたアスペクト比のテーブルとこれらのアスペクト比のそれぞれについての "参照"幅/高さをハードコードします。次に、現在要求されている解像度を見て、そのアスペクト比を見つけて、最も近い一致するアスペクト比について私のテーブルを見て、オルト投影を設定します(中心が一致しているが幅が一致していないか、 - ボックス化が自動的に行われます)、それに応じたビューポート。

例:qHD(960x540)、WXGA(1280x720)、およびFHD(1920x1080)の3つのアスペクト比がすべて同じアスペクト比であるため、1280x720の正射影を設定します。

アスペクト1.5のSVGAとDVGA(960x640)ディスプレイの両方で、SVGA 800x600解像度を設定してすべてが正常に見えるようにします。

上記の方法では、主要ターゲットデバイスが使用するアスペクト比に合わせてアセットをデザインすると、スクラッチが表示されなくなります。 このメソッドは、資産の実際の解像度を決定するためにNOTです。

-1

現在、WPは800 x 480の解像度しかサポートしていません。将来、異なる解像度が許される場合、自動スケーリングの話があります。これまでのところ何も出てこなかったので、あなたはそれを楽にすることをお勧めします。

編集:ヘッドアップに感謝..投稿を再読します。はいモノラルはあなたがAndroidとiOSの両方のために書くことを可能にし、あなたは多くのコードhttp://xamarin.com/をもっと分かち合うことができます。

アイデアは、共通のライブラリ(エンジンなど)を用意し、さまざまなプラットフォームに合わせてUIを最適化することです。

+0

彼はゲームの移植を検討しているので、iOSとAndroidの解像度は関連しています。 – Elideb

関連する問題