# UGS の使用の準備

> Learn how to set up Unity Gaming Services in your project.

このトピックでは、プロジェクトで Unity Gaming Services の使用準備を整える方法について説明します。

### 前提条件##prerequisites

オンボーディングプロセスを開始する前に、以下の手順を実行してください (まだ行っていない場合)。

* [Unity アカウントを作成します](/cloud/accounts/create-account.md)。
* [価格設定と請求](./pricing-and-billing.md) について学習します。

### ゲームで Unity Engine を使用する場合##games-using-the-unity-engine

Unity プロジェクトで UGS の使用準備を整えるには、次の手順に従います。

1. 新しい Unity Cloud プロジェクトを作成します。
   * 新しいプロジェクトの場合、Unity Hub で [プロジェクトを作成](#create-a-project-in-the-unity-hub) します。これにより、自動で Unity Dashboard にプロジェクトが作成されます。
   * 既存の Unity プロジェクトの場合は、次の手順に従います。
     1. Unity Dashboard で [プロジェクトを作成](#create-a-project-in-the-unity-dashboard) します。
     2. Unity エディターのプロジェクトに [作成したプロジェクトをリンク](#link-your-project-in-the-unity-editor) します。
2. 必要な UGS パッケージを [インストール](#install-ugs-packages) します。
3. SDK の [名前空間をインポート](#import-sdk-namespace) します。
4. ゲームコード内で [UGS を初期化](#initialize-unity-services-in-your-game-code) します。
5. 最初の Cloud Code スクリプトを [作成](#create-your-first-cloud-code-script-and-beyond) します。

### ゲームで REST API を使用する場合##games-using-restapi

別のゲームエンジンを使用する場合、REST API を使用してゲームに UGS を実装できます。UGS の使用を準備するには、次の手順に従います。

1. Unity Dashboard で [プロジェクトを作成](#create-a-project-in-the-unity-dashboard) します。
2. REST API の [使用準備](https://services.docs.unity.com/docs) に関するドキュメントを確認します。

Unreal Engine を使用する場合、以下を使用して一部の UGS 機能をゲームに実装することもできます。

* [Unity Gaming Services SDK for the Unreal Engine](/matchmaker/ugs-for-the-unreal-engine.md)。以下を実装するために使用します。
  * [認証](/authentication-unreal.md)
  * [Multiplay Hosting](https://www.rocketscience.gg/multiplay/)
  * [Matchmaker](/matchmaker-unreal.md)
* [Vivox Unreal SDK](https://docs.vivox.com/v5/general/unreal/5_23_0/en-us/Default.htm#Unreal/Unreal.htm)

## Unity Hub でのプロジェクトの作成##create-a-project-in-the-unity-hub

Unity Cloud に接続された新しいプロジェクトを作成する最も速い方法は、Unity Hub を使用することです。

1. Unity Hub で、**New project** (新しいプロジェクト) を選択します。
2. Unity Organization (組織) などの必須フィールドを入力します。
3. **Connect to Unity Cloud** (Unity Cloud に接続する) チェックボックスが選択されていることを確認します。

新しい Unity プロジェクトが、Unity Dashboard 内に自動的に作成されます。手動で接続する必要はありません。

これで、Unity Dashboard でサービスを参照できるようになりました。サービスを連携するには、[UGS パッケージのインストール](#install-ugs-packages) に進んでください。

## Unity Dashboard でのプロジェクトの作成##create-a-project-in-the-unity-dashboard

プロジェクトとサービスの管理は、[Unity Dashboard](https://cloud.unity.com/) で行います。新しいプロジェクトを作成するには、次の手順に従います。

1. プライマリナビゲーションメニューから **Projects** (プロジェクト) を選択します。
2. **Projects** (プロジェクト) ページの右上にある **New** (新規) を選択します。
3. プロジェクト名と [COPPA](https://www.ftc.gov/enforcement/rules/rulemaking-regulatory-reform-proceedings/childrens-online-privacy-protection-rule) 指定を入力します。
4. **Create** (作成) を選択します。

これで、Unity Dashboard でプロジェクトを設定し、Unity エディターのプロジェクトとの統合前にサービスの設定を行えるようになりました。例えば、[Economy](/economy.md) のアイテムを設定したり、[Game Override](/game-overrides.md) を作成したりできます。その後、Unity エディターのプロジェクトに [Unity Cloud プロジェクトをリンク](#link-your-project-in-the-unity-editor) します。

詳細については、[Unity プロジェクトの管理](/cloud/projects/create-project.md) を参照してください。

## Unity エディター内のプロジェクトのリンク##link-your-project-in-the-unity-editor

Unity Gaming Services を使用するには、Unity エディター内のプロジェクトを Unity Cloud プロジェクトにリンクする必要があります。

エディター内のプロジェクトをリンクするには、次の手順に従います。

1. **Edit** (編集) > **Project Settings** (プロジェクト設定) > **Services** (サービス) を選択します。
2. **Use an existing Unity project ID** (既存の Unity プロジェクト ID を使用) を選択します。
3. ドロップダウンメニューから組織とプロジェクトを選択します。
4. **Link project ID** (プロジェクト ID をリンク) を選択します。

Unity Dashboard にプロジェクトをリンクする方法の詳細については、[こちら](/cloud/projects/configure-project-for-unity-cloud.md) を参照してください。

## UGS パッケージのインストール##install-ugs-packages

プロジェクトに実装予定のサービスに対応したパッケージをインストールする必要があります。UGS 対応のパッケージを確認およびインストールするには、次の手順に従います。

1. Unity エディターで、**Window** (ウィンドウ) > **Package Manager** (パッケージマネージャー) を選択します。
2. Package Manager で、**Unity Registry** (Unity レジストリ) のリストビューを選択します。
3. パッケージ名を検索するか、レジストリリスト内で見つけます。
4. このパッケージを選択し、**Install** (インストール) をクリックします。

検索バーに **services** と入力する方法もあります。この場合、Remote Config 以外のすべてのサービスが返されます。

バージョン 2022.1 以降のエディターでは、Package Manager の **Services** (サービス) タブに、UGS で使用できるすべてのパッケージが表示されます。

## SDK 名前空間のインポート##import-sdk-namespace

SDK の API にアクセスするには、スクリプトでその SDK の名前空間をインポートする必要があります。例えば、Analytics の場合、以下のようにします。

```cs
using Unity.Services.Analytics;
```

## ゲームコードでの Unity Services の初期化##initialize-unity-services-in-your-game-code

サービスの機能を呼び出す前に、Services Core SDK を初期化する必要があります。推奨されるベストプラクティスは、ゲームのランタイムの初期 (できれば起動時) にサービスを初期化することです。

> **Note:**
>
> **ノート**: `com.unity.services.core` パッケージをインストールしたり、パッケージマニフェストに追加したりする必要はありません。これに依存する UGS パッケージをインストールしたときに、自動的にプルされます。

ゲームコード内で Unity Services を初期化するには、Services Core 名前空間 (`Unity.Services.Core`) をインポートするスクリプトを作成した後、`InitializeAsync` メソッドを呼び出します。例を次に示します。

```cs
using System;
using Unity.Services.Core;
using UnityEngine;

public class InitializationExample : MonoBehaviour
{
	async void Awake()
	{
		try
		{
			await UnityServices.InitializeAsync();
		}
		catch (Exception e)
		{
			Debug.LogException(e);
		}
	}
}
```

このメソッドは、プロジェクトにインストールされているすべての Unity Gaming Services を初期化します。[`State`](./services-core-api.md#state) メソッドを使用すると、ランタイム時にゲームの初期化ステータスを確認できます。詳細については、[Services Core API](services-core-api#initializeasync) のドキュメントを参照してください。

## 最初の Cloud Code スクリプトの作成とその後の手順##create-your-first-cloud-code-script-and-beyond

Unity Gaming Services の最も一般的な使用方法の 1 つは、カスタムサーバー主導型の経済ロジックまたはゲームロジックです。こちらの [Cloud Code ウォークスルー](/cloud-code/scripts/getting-started.md#sdkinstallation) に、インストール、初期化、ダッシュボード設定、ゲームクライアントからのシンプルな Cloud Code スクリプトのリモート実行など、使用を開始するために必要なすべての情報が含まれています。

## 次のステップ##next-steps

* Unity の [ユースケースサンプルプロジェクト](/services/solutions/use-cases-project.md) で、UGS 機能の使用方法のアイデアを確認します。
* [個々のサービス](./_index.md) を実装します。
* [UGS CLI](https://github.com/Unity-Technologies/unity-gaming-services-cli) または [Deployment ウィンドウ](https://docs.unity3d.com/Packages/com.unity.services.deployment@latest/index.html?subfolder=/manual/deployment_window.html) を使用して設定管理ワークフローを単純化します。
