ゲーム コントローラ ライブラリ Android Game Development Kit の一部。

Paddleboat とも呼ばれるゲーム コントローラ ライブラリは、ゲーム コントローラの安定したサポートを実装するのに役立ちます。このライブラリは、以下のものを提供します。

  • コントローラの接続と接続解除を検出するコールバック
  • コントローラ デバイスの情報(ボタンのスタイルやレイアウトなど)
  • 最新のデュアルスティック コントローラ設計で標準化されたコントローラ入力データ
  • サポートされているコントローラ拡張機能(バイブレーション、ライト、モーション軸のデータ、バッテリーの状態など)
  • 仮想および物理のマウスデバイスから入力を読み取る機能
  • 特定のデバイス用のカスタムのコントローラ マッピング データを指定する機能

互換性要件

ゲーム コントローラ ライブラリには、以下の最小互換性要件があります。

  • Android 4.4(API レベル 19)以降
  • Android NDK バージョン 21 以降

統合

ゲーム コントローラ ライブラリは、Gradle ベースのビルドシステム(Android Studio を含む)を使用するゲーム用の Jetpack ライブラリ、およびカスタムのビルドシステムを使用するゲーム用の個別のファイルの 2 つの形式で配布されます。

ゲーム コントローラ ライブラリを統合するサンプルについては、 games-samples リポジトリ

Jetpack ライブラリ

Jetpack Android Games のページでは、ゲームの build.gradle ファイルにゲーム コントローラ ライブラリの依存関係を追加するための統合手順を説明しています。

ゲーム コントローラの Jetpack ライブラリ リリースは、C++ のランタイム共有ライブラリに対してビルドされた静的ライブラリです。

build.gradle ファイルを更新したら、ゲームのメインの CMakeLists.txt ファイルに次の行を追加する必要があります。

find_package(games-controller REQUIRED CONFIG)

また、ゲームのメイン共有ライブラリの target_link_libraries コマンドで、ライブラリ リストに次のエントリを追加する必要があります。

games-controller::paddleboat_static

個別ファイル

Android Game Development Kit の .zip アーカイブの配布には、ゲーム コントローラ ライブラリのヘッダー ファイルとライブラリ ファイルが含まれています。ゲーム コントローラ ライブラリを使用するには、次のファイルをプロジェクトに含める必要があります。

  • ゲーム コントローラ ライブラリの Dalvik バイトコード部分を含む classes.jar ファイル。このファイルは libs/classes.jar にあります。
  • paddleboat.h インターフェース ヘッダー ファイル。このファイルは include/paddleboat/paddleboat.h にあります。
  • libpaddleboat.so 共有ライブラリ ファイル、または libpaddleboat-static.a 静的ライブラリ ファイル。これらのファイルは、libs ディレクトリのビルド構成サブディレクトリにあります。

ルートの libs ディレクトリの下にあるビルド構成サブディレクトリは、次のように分類されています。

  • ABI アーキテクチャ
  • 最小 Android API レベル
  • Android NDK バージョン
  • C++ ランタイム ライブラリのバージョン
  • リリースビルド構成、またはデバッグビルド構成

たとえば、arm64-v8a_API16_NDK21_cpp_shared_Release サブディレクトリには、以下のライブラリ ファイルが含まれています。

  • ARM 64 ビット ABI
  • 最小 API レベル: 16
  • NDK バージョン 21 に対するビルド
  • C++ ランタイムの共有ライブラリ バージョンに対するビルド
  • リリースビルド構成

libpaddleboat_static.a ファイルはこのサブディレクトリの直下にあります。libpaddleboat.so ファイルは、このサブディレクトリの lib/paddleboat/ にあります。

次のステップ

ゲーム コントローラ ライブラリを引き続きゲームに統合するには、次のガイドをご覧ください。