0

私は Android でのスケーリングについて多くのことを読みましたが、さまざまな意見があります。しかし、これは理解することが本当に重要だと思うので、誰かが説明してくれるかもしれません.

たとえば、.png-pics の多くのビットマップを使用してゲームを作成しています。すべてを res/drawable/mdpi-folder に入れています。このゲームは携帯電話向けにのみリリースする予定なので、タブレットはありません。

hdpiであるギャラクシーネクサスを使用していますが、すべて問題なく見えます。しかし、mdpi と xhdpi を搭載した電話では問題なく表示されますか? 私は密度ピクセルを使用していません。使用してみcanvas.setDensity(320)ましたが、これを避ける必要があることをどこかで読みました。

誰もこれについて経験がありますか?私は何も持っていないので、他の電話でテストすることはできません。私の友人はすべて iPhone を持っているからです。

私のビットマップが、私のような hdpi ではない他の携帯電話で大きくまたは小さく見えるのではないかと心配しているだけで、もちろんゲームが台無しになります。

4

1 に答える 1

2

hdpi リソースを提供しないと、ゲームは hdpi デバイスで見栄えが悪くなります。理由は次のとおりです。基本密度は mdpi です。したがって、400x400 dp の画像は、mdpi デバイスでのみそのままレンダリングされます。ldpi で同じサイズが必要な場合は、イメージを 0.75 倍にする必要がありますが (大したことではありません)、hdpi の場合はイメージを 1.5 倍、xhdpi デバイスの場合は mdpi の 2.0 倍のサイズにする必要があります。したがって、専用の drawable がなければ、アップスケールが発生します。そして、これがうまくいくことはめったにありません (ほとんどの場合、グラフィックがぼやけてしまいます)。そのため、開発中は常にドローアブルを res/drawable-mdpi フォルダーに配置します。コードをリリースする準備ができたら、hdpi リソースを res/drawables-hdpi に追加します。私は個人的にldpiデバイスを気にしません.mdpiより密度が低いデバイスはほとんどないので、ダウンスケールを行うAndroidフレームワークで問題ありません。しかし、アップスケーリングは別の話です-アーティファクトなしで小さいビットマップから大きなビットマップを技術的に作成できないため(いいえ、CSIの嘘;)、常に悪い結果(ぼやけた画像)が得られます-単に十分なデータが得られないため、推定する必要があります. したがって、適切なドローアブルを自分で提供することをお勧めします。そうしないと、エンド ユーザーから苦情が寄せられ、アプリの見栄えが損なわれる可能性があります。

于 2012-09-13T00:23:58.873 に答える