Google Play ゲームはオープンベータ版です。

Google Play ゲームのグラフィックを設定する

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Google Play ゲームでは、PC の互換性に関するガイドのページに記載されている要件に加え、ゲームのグラフィック機能を更新し、大画面向けのサポートを追加する必要があります。このトピックでは、要件と関連する推奨事項について説明します。

テクスチャの圧縮

Google Play ゲームでは圧縮されたテクスチャを可能な限りパススルーするため、DXTC または BPTC を使用して PC のハードウェアを活用してください。互換性のために OpenGL の機能をエミュレートする必要がある場合、こうしたテクスチャを圧縮解除する必要が生じることもあります。そのため、ゲームのプロフィールを作成することが常に推奨されます。

ETC1ETC2 などの形式は、ネイティブ グラフィック スタックに送信される前に OpenGL 変換レイヤで圧縮解除されます。これらは引き続き機能しますが、メモリやランタイムの効率面のメリットはモバイル ハードウェアで期待されるものとは異なります。

OpenGL ES バージョン

Google Play ゲームは OpenGL ES 3.0 をサポートしています。Google Play ゲームとの互換性を維持するため、AndroidManifest.xml ファイルで OpenGL ES 3.0 より新しいバージョンを指定していないことを確認してください。

最大フレームレートの上限を上げる

一部のプレーヤーは、モバイル デバイスよりも PC ではるかに高いフレームレートを使用してゲームを実行できます。優れたプレーヤー エクスペリエンスを実現するために、上限を 60 fps 以上に設定するか、フレームレートの上限を完全に解除することをおすすめします。

大画面向けの最適化

Google Play ゲームでは、次のような大画面向けの最適化が必要です。

高解像度のアセットとテクスチャ

PC では、過去 12 か月間にリリースされたハイエンド Android デバイスと同じパフォーマンス レベルを期待できます。つまり、より高い解像度のゲームアセットを使用できるということです。可能であれば、初回起動時に使用できるようにします。スマートフォンよりも大きな PC 画面のほうが、プレーヤーが低解像度のテクスチャやモデルに気づく可能性が高くなることにご留意ください。

Opaque Binary Blob OBB ファイル(APK 拡張ファイルともいいます)を使用してアセットを配信している場合、高解像度のアセットを追加すると、合計サイズが OBB の上限(2 GB のメインリソースと 2 GB のパッチ)を超える可能性があります。この場合は、Play Asset Delivery を使用してアセットを配信することを検討してください。

Play Asset Delivery は、Unity 5.6 以降(Play Unity プラグイン経由)と Unreal Engine 4.25 でサポートされています。他のエンジンでは、Java とネイティブ SDK を提供しています。

Play Asset Delivery を使用すると、ゲームのサイズを大きくすることなく、デバイスでサポートされている最適なテクスチャ圧縮形式に一致するテクスチャを自動的に配信できます。デバイスをそのパフォーマンス レベルに応じてターゲットに設定し、それに合わせて解像度の高さを調整してテクスチャを自動的に配信することもできます。

UI スケーリング

大画面では、すべての要素が適切なサイズになるように、ゲームの UI の調整が必要になることがあります。HUD は画面の 20% を超えないようにすることをおすすめします。

アスペクト比

Google Play ゲームでは、16:9 のアスペクト比をサポートする必要があります。理想的なプレーヤー エクスペリエンスを実現するために、16:10 と 3:2 もサポートすることをおすすめします。

動的な表示

Google Play ゲームでは、動的に表示サイズを調整するために次の変更を行う必要があります。

  • Android マニフェストで android:screenOrientation を使用して、サポートする画面の向きを指定します(画面の向きを両方ともサポートする場合を除きます)。
  • android:minAspectRatioandroid:maxAspectRatio を使用して、サポートする最小アスペクト比と最大アスペクト比を指定します(ゲームがアスペクト比 16:9、16:10、3:2 をすべてサポートする場合を除きます)。

onConfigurationChanged() で DPI の変更をサポートし、Android マニフェストで android:configChanges を使用して、サポートされている変更として「密度」を宣言することをおすすめします。