0

800 x 480の解像度をターゲットにしたゲームを作成しましたが、他のWP7の解像度に適応させることに興味を持っています。また、ゲームはMonoとExEnを介してiPhoneとAndroidに移植でき、他の多くの画面解像度を開くことができると聞いています。

これに対処する適切な方法は何ですか?画面サイズを検出し、アセットを変更してオリジナルにできるだけ近づけて同じようにプレイできるように、ゲームを十分にスマートにしたいと思います。

これは2Dゲームであり、すべての解像度に対して別々の画像を用意するのが理想的だと思いますが、将来にわたって利用できるようにするためには、これは機能しません。ベースラインを800x480にし、開始時にサイズを検出し、すべてのエンティティの境界を変更して拡大縮小し、それらのターゲットにテクスチャを描画することを考えました。これにより、衝突検出を正しく実行し、テクスチャをスケーリングすることができますが、より良い方法がある可能性があります。

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

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

4

2 に答える 2

3

Windows Phoneが複数の解像度をサポートする可能性があるときにここに着陸する人々の利益のために(または真の多重解像度エンジンを作成するためにこの答えを探している)、これが私のやり方です。

利用可能な解像度を列挙/確​​認し、すでに知っているアスペクト比の解像度の正投影を設定します。この目的のために、ゲームをテストしたアスペクト比のテーブルと、これらの各アスペクト比の「参照」の幅/高さをハードコーディングします。次に、現在要求されている解像度を確認し、そのアスペクト比を見つけて、テーブルを調べて最も近い-より低い一致するアスペクト比を探し、正投影を設定します(中央-高さが一致するが幅が一致しない場合、またはその逆の場合、文字-ボクシングは自動的に行われます)そしてそれに応じてビューポート。

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

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

上記の方法では、メインのターゲットデバイスが使用するアスペクト比に合わせてアセットを設計した場合に、押しつぶされないようにします。この方法は、アセットの実際の解像度を決定するためのものではないことに注意してください。

于 2012-04-24T14:42:55.927 に答える
-1

現在、WPは800x480の解像度のみをサポートしています。将来、異なる解像度が許可されるとき、自動スケーリングの話がありました。これまでのところ何も出ていないので、気楽にやってみることをお勧めします。

編集:頭を上げてくれてありがとう..投稿を読み直してください。はいMonoを使用すると、AndroidとiOSの両方で記述でき、詳細についてはhttp://xamarin.com/で多くのコードを共有できます。

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

于 2012-04-24T13:13:40.373 に答える