Android Games

Android Games ライブラリは、Android Game SDK をミラーリングしており、バイナリ ダウンロードとして入手できます。Android Game SDK を手動でダウンロードしてビルドに統合する代わりに、androidx ライブラリを使用できます。

Android Game SDK について詳しくは、SDK ドキュメントSDK リリースノートをご覧ください。

androidx.games グループ内のすべてのアーティファクトのリストを以下に示します。

アーティファクト 現在の安定版リリース 次のリリース候補 ベータ版リリース アルファ版リリース
games-activity 1.0.0 - - -
games-controller 1.0.0 - - -
games-frame-pacing 1.9.0 - - -
games-text-input 1.0.0 - - -
games-performance-tuner 1.4.3 - - 1.5.0-alpha01
このライブラリの最終更新日: 2021 年 8 月 18 日

依存関係の宣言

game への依存関係を追加するには、Google Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

android {
    ...
    // To use the Android Frame Pacing or Android Performance Tuner libraries, enable
    // native dependencies to be imported. Libraries will be made available to your CMake build
    // as packages named "games-frame-pacing" and "games-performance-tuner".
    buildFeatures {
        prefab true
    }
}

dependencies {
    // To use the Android Frame Pacing library
    implementation "androidx.games:games-frame-pacing:1.9.0"

    // To use the Android Performance Tuner
    implementation "androidx.games:games-performance-tuner:1.5.0-alpha01"

    // To use the Games Activity library
    implementation "androidx.games:games-activity:1.0.0"

    // To use the Games Controller Library
    implementation "androidx.games:games-controller:1.0.0"

    // To use the Games Text Input Library
    implementation "androidx.games:games-text-input:1.0.0"
}

Kotlin

android {
    ...
    // To use the Android Frame Pacing or Android Performance Tuner libraries, enable
    // native dependencies to be imported. Libraries will be made available to your CMake build
    // as packages named "games-frame-pacing" and "games-performance-tuner".
    buildFeatures {
        prefab = true
    }
}

dependencies {
    // To use the Android Frame Pacing library
    implementation("androidx.games:games-frame-pacing:1.9.0")

    // To use the Android Performance Tuner
    implementation("androidx.games:games-performance-tuner:1.5.0-alpha01")

    // To use the Games Activity library
    implementation("androidx.games:games-activity:1.0.0")

    // To use the Games Controller Library
    implementation("androidx.games:games-controller:1.0.0")

    // To use the Games Text Input Library
    implementation("androidx.games:games-text-input:1.0.0")
}
}

依存関係について詳しくは、ビルド依存関係の追加をご覧ください。

Gradle プロパティを追加する

アプリ(またはモジュール)の build.gradle ファイルと同じディレクトリにある gradle.properties ファイルに、プロパティを追加しなければならない場合があります。gradle.properties ファイルが存在しない場合は作成します。

Android Studio 4.0 を使用している場合は、gradle.properties に次の行が含まれていることを確認してください。

# Enables experimental Prefab
android.enablePrefab=true
# Tell Android Studio we are using AndroidX
android.useAndroidX=true

Android Studio 4.1 以降を使用している場合は、gradle.properties に次の行が含まれていることを確認してください。

# Tell Android Studio we are using AndroidX
android.useAndroidX=true

CMake でパッケージを追加する

インポートした Game SDK パッケージを利用できるようにするには、メインアプリの CMakeLists.txt ファイルに次の行を追加します。

# Add the packages from the Android Game SDK
find_package(games-frame-pacing REQUIRED CONFIG)
find_package(games-performance-tuner REQUIRED CONFIG)

これにより、ゲームコードに Android Game SDK のヘッダー ファイルを含めることができます。

#include "swappy/swappyGL.h"
#include "tuningfork/tuningfork.h"

メインアプリの CMakeLists.txt ファイルで、メインの共有ライブラリの target_link_libraries を見つけます。Android Game SDK の静的ライブラリへの参照を追加して、共有ライブラリに組み込まれるようにします。

target_link_libraries(...
  games-frame-pacing::swappy_static
  games-performance-tuner::tuningfork_static
  ...)

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

Games Performance Tuner 1.5.0

バージョン 1.5.0-alpha01

2021 年 8 月 18 日

androidx.games:games-performance-tuner:1.5.0-alpha01 がリリースされました。バージョン 1.5.0-alpha01 に含まれる commit については、こちらをご覧ください

新機能

  • 設定ファイルを使用せず、APT アップロードの間隔をプログラムで設定できるようになりました。

API の変更

  • 関数を追加しました: TuningFork_setAggregationStrategyInterval
  • TuningFork_Settings 構造体にフィールドを追加しました: aggregation_strategy_intervalms_or_count

Games-Activity バージョン 1.0.0

バージョン 1.0.0

2021 年 8 月 4 日

androidx.games:games-activity:1.0.0androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください

1.0.0 の主な機能

これは、Games-Activity、Games-Controller、Games-Text-Input の安定版の初回のリリースです。詳しくは、AGDK のホームページをご覧ください。

バージョン 1.0.0-rc01

2021 年 7 月 12 日

androidx.games:games-activity:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • GameActivityCallbacks::onSaveInstanceState の戻り値の型を修正しました

バージョン 1.0.0-beta01

2021 年 6 月 30 日

androidx.games:games-activity:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • GameActivityInputInfoGameActivityPointerAxes に名前変更します。
  • onNativeWindowResized コールバックでウィンドウの幅と高さが返されるようになりました。
  • onContentRectChanged コールバックが削除されました。
  • onLowMemory の名前が onTrimMemory に変更されました。
  • GameActivity_setWindowFormat を削除しました。
  • GameActivityMotionEvents ポインタと GameActivityMotionEvent ポインタの所有権モデルを改善しました。
  • onSaveInstanceState コールバックのユーザー状態の所有権モデルを改善しました。

バージョン 1.0.0-alpha01

2021 年 6 月 16 日

androidx.games:games-activity:1.0.0-alpha01 がリリースされました。

新機能

  • Games-Activity は、C/C++ ゲームを Android と統合するためのおすすめの方法として NativeActivity の代わりに導入された新しいライブラリです。

Games-Controller バージョン 1.0.0

バージョン 1.0.0

2021 年 8 月 4 日

androidx.games:games-activity:1.0.0androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください

1.0.0 の主な機能

これは、Games-Activity、Games-Controller、Games-Text-Input の安定版の初回のリリースです。詳しくは、AGDK のホームページをご覧ください。

バージョン 1.0.0-rc02

2021 年 7 月 21 日

androidx.games:games-controller:1.0.0-rc02 がリリースされました。バージョン 1.0.0-rc02 に含まれる commit については、こちらをご覧ください

バグの修正

  • 空の未使用のアーキテクチャ / バージョンの組み合わせで Prefab のインポートが失敗する原因となっていたパッケージング エラーを修正しました。

バージョン 1.0.0-rc01

2021 年 7 月 12 日

androidx.games:games-controller:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • 最新の GameActivity との非互換性に関する問題を修正しました

バージョン 1.0.0-beta01

2021 年 6 月 30 日

androidx.games:games-controller:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • 成功または失敗をブール値で返していた関数が Paddleboat_Error_Code 列挙型を返すようになりました
  • Paddleboat_onPause の名前を Paddleboat_onStop に変更しました
  • Paddleboat_onResume の名前を Paddleboat_onStart に変更しました
  • Paddleboat_processGameActivityEvent を 2 つの関数 Paddleboat_processGameActivityKeyInputEventPaddleboat_processGameActivityMotionInputEvent に分割しました
  • プレビュー版の Android S SDK でビルドする必要があった拡張コントローラ機能を削除しました
  • Paddleboat_getBackButtonConsumed 関数を追加しました
  • コントローラとマウスのステータス コールバックに、ユーザー定義のデータへのポインタを省略可能なパラメータとして追加しました
  • コントローラ名の文字列をデバイス情報の構造体から移動し、Paddleboat_getControllerName 関数でアクセスするようにしました

バグの修正

  • 最初はコントローラとして自身をレポートしないが、それを後で onInputDeviceChanged メッセージを通じて行うコントローラが、コントローラ接続として正しく検出されないという問題を修正しました。

バージョン 1.0.0-alpha01

2021 年 6 月 16 日

androidx.games:games-controller:1.0.0-alpha01 がリリースされました。

新機能

  • Games-Controller は、ゲーム コントローラ デバイスを検出し、デバイスからの入力を読み取り、デバイスを操作する C API を提供する新しいライブラリです。

Games-Text-Input バージョン 1.0.0

バージョン 1.0.0

2021 年 8 月 4 日

androidx.games:games-activity:1.0.0androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください

1.0.0 の主な機能

これは、Games-Activity、Games-Controller、Games-Text-Input の安定版の初回のリリースです。詳しくは、AGDK のホームページをご覧ください。

バージョン 1.0.0-rc01

2021 年 7 月 12 日

androidx.games:games-text-input:1.0.0-rc01 がリリースされました。変更はありません。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください

バージョン 1.0.0-beta01

2021 年 6 月 30 日

androidx.games:games-text-input:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • GameTextInputState オブジェクトの所有権モデルを改善しました。
  • NDK との整合性がとれるように型を整理しました。

バージョン 1.0.0-alpha01

2021 年 6 月 16 日

androidx.games:games-text-input:1.0.0-alpha01 がリリースされました。

新機能

  • Games-Text-Input は、ゲーム デベロッパーが C/C++ に基づく Android ソフト キーボード入力を容易に使用できるようにする新しいライブラリです。

Games Frame Pacing 1.9.0

バージョン 1.9.0

2021 年 7 月 12 日

androidx.games:games-frame-pacing:1.9.0 がリリースされました。バージョン 1.9.0 に含まれる commit については、こちらをご覧ください

1.7.0 以降の重要な変更

  • 内部のバージョニング スキームに合わせて更新しました。

Games Frame Pacing 1.7.0

バージョン 1.7.0

2021 年 6 月 30 日

androidx.games:games-frame-pacing:1.7.0 がリリースされました。バージョン 1.7.0 に含まれる commit については、こちらをご覧ください

バージョン 1.7.0-rc01

2021 年 6 月 2 日

androidx.games:games-frame-pacing:1.7.0-rc01 がリリースされました。バージョン 1.7.0-rc01 に含まれるコミットについては、こちらをご覧ください。

バージョン 1.7.0-beta02

2021 年 2 月 24 日

androidx.games:games-frame-pacing:1.7.0-beta02 がリリースされました。

バージョン 1.7.0-beta01

2020 年 12 月 16 日

androidx.games:games-frame-pacing:1.7.0-beta01 がリリースされました。

Games Performance Tuner 1.4.3

バージョン 1.4.3

2021 年 7 月 12 日

androidx.games:games-performance-tuner:1.4.3 がリリースされました。バージョン 1.4.3 に含まれる commit については、こちらをご覧ください

1.1.0 以降の重要な変更

  • 内部のバージョニング スキームに合わせて更新しました。

Games Performance Tuner 1.1.0

バージョン 1.1.0

2021 年 6 月 30 日

androidx.games:games-performance-tuner:1.1.0 がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください

バージョン 1.1.0-rc01

2021 年 6 月 2 日

androidx.games:games-performance-tuner:1.1.0-rc01 がリリースされました。バージョン 1.1.0-rc01 に含まれるコミットについては、こちらをご覧ください。

バージョン 1.1.0-beta03

2021 年 4 月 21 日

androidx.games:games-performance-tuner:1.1.0-beta03 がリリースされました。

バージョン 1.1.0-beta02

2021 年 2 月 24 日

androidx.games:games-performance-tuner:1.1.0-beta02 がリリースされました。

バージョン 1.1.0-beta01

2020 年 12 月 16 日

androidx.games:games-performance-tuner:1.1.0-beta01 がリリースされました。

バージョン 1.1.0-alpha01

androidx.games:games-performance-tuner:1.1.0-alpha01 がリリースされました。

バージョン 1.0.0

バージョン 1.0.0-alpha02

2020 年 8 月 12 日

Android Gaming ライブラリの名前が Android Games ライブラリに変更されました。

androidx.gaming -> androidx.games

バージョン 1.0.0-alpha01

2020 年 6 月 10 日

androidx.games:1.0.0-alpha01 がリリースされました。