2012-01-18 8 views
1

私は異なるアンドロイドデバイスでゲームオブジェクトのサイズを同じにしようとしています。つまり、画面のサイズと解像度が異なります。例えば、画素に1cmのように再計算する。diffのアンドロイド画面サイズと解像度で同じサイズのゲーム要素を取得する方法

つまり、画面の解像度とサイズに合わせて再計算し、実際のサイズに対応するピクセル数を取得することを意味します。

私はxmlでアンドロイドUIを作成すると、デバイスに依存しないピクセルについて読んでいますが、OpenGLでやっているので実用的なサイズをピクセルに再計算したいので、私にとってはうまくありません。

答えて

1

画面dpiを使用すると動作する場合があります。 This postは、DisplayMetricsを使用して取得する方法を説明しています。

1
  1. ゲームのViewの高さと幅を取得するには、getHeight()メソッドとgetWidth()メソッドを使用します。
  2. ビューの高さと幅を基準にして、ゲームオブジェクトのすべてのディメンションを定義します。

また、Viewのコンストラクタ内からgetHeight()およびgetWidth()を呼び出さないでください。ビューサーフェスがまだ作成されていないため、0が返されます。私は自分のゲームにSurfaceViewを使用しています。私はsurfaceCreated()メソッドでこれらのメソッドを呼び出しています。

+0

いいえ、これは間違っています。別の画面の直径に異なるサイズが表示されます – michael

+0

「画面の解像度とサイズに合わせて再計算し、実際のサイズに対応するピクセル数を取得してください」...あなたがオブジェクトのサイズは、これはあなたに正確になるスクリーンサイズに相対的... –

関連する問題