Firebase Unity SDK を使用して Unity ゲームをパワーアップさせることができます。
Unity プロジェクトに Firebase を簡単に組み込めることを示すために、サンプルゲーム「MechaHamster」を作成しました。Firebase をゲームに追加してみたい方は、GitHub にあるスターター バージョンを使用してください。完成版を入手したい場合は、App Store または Google Play ストアで該当するバージョンを確認してください。
Firebase でゲームをパワーアップする方法の詳細については、Firebase のゲームのページをご覧ください。
Unity プロジェクトに Firebase を追加済みの場合は、Firebase Unity SDK の最新バージョンを使用していることを確認します。
前提条件
Unity 2019.1 以降をインストールします。これより前のバージョンも互換性がある可能性がありますが、積極的にはサポートされません。Unity 2019.1 のサポートは非推奨とみなされており、次のメジャー リリース以後は積極的にサポートされなくなります。
(Apple プラットフォームのみ)以下をインストールします。
- Xcode 13.3.1 以降
- CocoaPods 1.12.0 以降
Unity プロジェクトが次の要件を満たしていることを確認します。
- iOS の場合 - ターゲットが iOS 11 以降であること
- tvOS の場合 - ターゲットが tvOS 12 以降であること
- Android の場合 - ターゲットが API レベル 19(KitKat)以降であること
実機を設定するか、エミュレータを使用してアプリを実行します。
Apple プラットフォームの場合 - 実機を設定するか、iOS または tvOS シミュレータを使用します。
Android の場合 - エミュレータでは Google Play のエミュレータ イメージを使用する必要があります。
- Google アカウントを使用して Firebase にログインします。
Unity プロジェクトがまだない方で Firebase プロダクトを試してみたい場合は、クイックスタート サンプルをダウンロードしてください。
ステップ 1: Firebase プロジェクトを作成する
Unity プロジェクトに Firebase を追加する前に、Unity プロジェクトに接続するための Firebase プロジェクトを作成する必要があります。Firebase プロジェクトの詳細については、Firebase プロジェクトについて理解するをご覧ください。
ステップ 2: アプリを Firebase に登録する
Firebase プロジェクトに接続するアプリやゲームを登録できます。
Firebase コンソールに移動します。
プロジェクトの概要ページの中央で、Unity アイコン(
)をクリックして設定ワークフローを起動します。すでに Firebase プロジェクトにアプリを追加している場合は、[アプリを追加] をクリックするとプラットフォームのオプションが表示されます。
登録する Unity プロジェクトのビルド ターゲットを選択するか、両方のターゲットを同時に登録することもできます。
Unity プロジェクトのプラットフォーム固有の ID を入力します。
iOS の場合 - Unity プロジェクトの iOS ID を [iOS バンドル ID] に入力します。
Android の場合 - Unity プロジェクトの Android ID を [Android パッケージ名] に入力します。「パッケージ名」と「アプリケーション ID」は、しばしば同じ意味で使用されます。
(省略可)Unity プロジェクトのプラットフォーム固有のニックネームを入力します。
これらのニックネームは内部用の便宜的な ID であり、Firebase コンソールにのみ表示されます。[アプリの登録] をクリックします。
ステップ 3: Firebase 構成ファイルを追加する
Firebase コンソールの設定ワークフローでプラットフォーム固有の Firebase 構成ファイルを取得します。
iOS の場合 - [GoogleService-Info.plist をダウンロード] をクリックします。
Android の場合 - [google-services.json をダウンロード] をクリックします。
Unity プロジェクトで [Project] ウィンドウを開き、構成ファイルを
Assets
フォルダに移動します。Firebase コンソールの設定ワークフローに戻り、[次へ] をクリックします。
ステップ 4: Firebase Unity SDK を追加する
Firebase コンソールで [Firebase Unity SDK をダウンロード] をクリックし、適切な場所で SDK を解凍します。
Firebase Unity SDK はいつでも再ダウンロードできます。
Firebase Unity SDK はプラットフォーム固有ではありません。
開いている Unity プロジェクトで、[Assets] > [Import Package] > [Custom Package] を選択します。
解凍した SDK から、アプリで使用するサポートされている Firebase プロダクトを選択します。
アナリティクスが有効な場合
- Google アナリティクス用の Firebase パッケージを追加:
FirebaseAnalytics.unitypackage
- アプリで使用する Firebase プロダクトのパッケージを追加します。たとえば、Firebase Authentication と Firebase Realtime Database を使用する場合:
FirebaseAuth.unitypackage
およびFirebaseDatabase.unitypackage
を追加します。
アナリティクスが無効な場合
アプリで使用する Firebase プロダクトのパッケージを追加します。たとえば、Firebase Authentication と Firebase Realtime Database を使用する場合:
FirebaseAuth.unitypackage
およびFirebaseDatabase.unitypackage
を追加します。- Google アナリティクス用の Firebase パッケージを追加:
[Import Unity Package] ウィンドウで [Import] をクリックします。
Firebase コンソールの設定ワークフローに戻り、[次へ] をクリックします。
ステップ 5: Google Play 開発者サービスの要件を確認する
Android 向け Firebase Unity SDK を使用するには、最新の Google Play 開発者サービスが必要です。
アプリケーションの先頭に次の using
ステートメントと初期化コードを追加します。SDK で他のメソッドを呼び出す前に Google Play 開発者サービスを確認し、必要であれば、Firebase Unity SDK で必要とされるバージョンに更新します。
using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => {
var dependencyStatus = task.Result;
if (dependencyStatus == Firebase.DependencyStatus.Available) {
// Create and hold a reference to your FirebaseApp,
// where app is a Firebase.FirebaseApp property of your application class.
app = Firebase.FirebaseApp.DefaultInstance;
// Set a flag here to indicate whether Firebase is ready to use by your app.
} else {
UnityEngine.Debug.LogError(System.String.Format(
"Could not resolve all Firebase dependencies: {0}", dependencyStatus));
// Firebase Unity SDK is not safe to use here.
}
});
これで設定は完了です。Unity プロジェクトは Firebase を使用するように登録、構成されました。
設定で問題がある場合は、Unity のトラブルシューティングとよくある質問をご覧ください。
デスクトップ ワークフローを設定する(ベータ版)
ゲームを作成する場合、Unity エディタやデスクトップ プラットフォームでまずゲームをテストしてから、開発の後の段階でモバイル デバイスにデプロイしてテストする方が簡単なことが良くあります。このワークフローをサポートするために、Windows、macOS、Linux、および Unity エディタ内で実行できる Firebase Unity SDK のサブセットが用意されています。
モバイル プラットフォームの場合と同じ手順に沿って、デスクトップ プラットフォームの Unity プロジェクトを設定します(上記のアプリを Firebase プロジェクトに登録するから開始)。
Unity IDE で Unity プロジェクトを実行するか、デスクトップ用に Unity プロジェクトをビルドします。
(省略可)Unity プロジェクトを編集モードで実行します。
Firebase Unity SDK は Unity の編集モードでも実行できるため、エディタのプラグインで使用できます。
エディタで使用される
FirebaseApp
を作成する場合、デフォルトのインスタンスは使用しません。代わりに
FirebaseApp.Create()
呼び出しに対して一意の名前を指定します。Unity IDE で使用されるインスタンスと Unity プロジェクトで使用されるインスタンスの間のオプションの競合を避けるために、この操作は重要です。
サポートされている Firebase プロダクト
Unity Firebase ライブラリの詳細については、リファレンス ドキュメントをご覧ください。
モバイルで利用可能な Firebase ライブラリ
Apple と Android の Firebase Unity SDK では、次の Firebase プロダクトがサポートされています。
Firebase プロダクト | Unity パッケージ |
---|---|
AdMob | AdMob Unity プラグインで個別に配信 |
アナリティクス | FirebaseAnalytics.unitypackage |
App Check | FirebaseAppCheck.unitypackage |
Authentication | FirebaseAuth.unitypackage |
Cloud Firestore | FirebaseFirestore.unitypackage |
Cloud Functions | FirebaseFunctions.unitypackage |
Cloud Messaging | FirebaseMessaging.unitypackage (推奨) FirebaseAnalytics.unitypackage |
Cloud Storage | FirebaseStorage.unitypackage |
Crashlytics | FirebaseCrashlytics.unitypackage (推奨) FirebaseAnalytics.unitypackage |
Dynamic Links | FirebaseDynamicLinks.unitypackage (推奨) FirebaseAnalytics.unitypackage |
Realtime Database | FirebaseDatabase.unitypackage |
Remote Config | FirebaseRemoteConfig.unitypackage (推奨) FirebaseAnalytics.unitypackage |
デスクトップで利用可能な Firebase ライブラリ
Firebase Unity SDK にはプロダクトのサブセットに対するデスクトップ ワークフローのサポートが含まれているため、Firebase の特定の部分を Unity エディタや、Windows、macOS、Linux のスタンドアロン デスクトップ ビルドで使用できます。
Firebase プロダクト(デスクトップ) | Unity パッケージ |
---|---|
App Check | FirebaseAppCheck.unitypackage |
Authentication | FirebaseAuth.unitypackage |
Cloud Functions | FirebaseFunctions.unitypackage |
Cloud Firestore | FirebaseFirestore.unitypackage |
Cloud Storage | FirebaseStorage.unitypackage |
Realtime Database | FirebaseDatabase.unitypackage |
Remote Config | FirebaseRemoteConfig.unitypackage |
Firebase では残りのデスクトップ ライブラリはスタブ(非機能的)実装であり、Windows、macOS、Linux 向けのビルドを便利にするために提供されています。このため、デスクトップを対象としてコードを条件付きでコンパイルする必要はありません。
次のステップ
Firebase アプリのサンプルを確認する。
アプリを起動する準備をする。
- Google Cloud Console でプロジェクトの予算アラートを設定する。
- Firebase コンソールの [使用量と請求額] ダッシュボードをモニタリングして、複数の Firebase サービスにまたがるプロジェクトの全体的な使用状況を確認する。
- Firebase リリース チェックリストを確認する。
Firebase や Unity プロジェクトでお困りの場合は、Unity のトラブルシューティングとよくある質問をご覧ください。