クイックスタート¶
このページでは、Unityエディタ上でSDKのデモを動かし、自社アプリに組み込んで実機確認するところまでを解説しています。
Unity エディタ上でデモを動かす¶
SDKのインポート¶
SDKのUnityパッケージを入手したら、Unityエディタのツールバー Assets > Import Package > Custom Package...
よりインポートします。ここでは、デモ用のフォルダもすべてインポートします。次のように、「AvatarPlay」フォルダと「AvatarPlay Demo」フォルダがインポートされていれば成功です。※ 自社アプリに組み込む際には、「AvatarPlay Demo」フォルダのインポートは不要です。
デモを動かす¶
エディタの Edit > Project Settings... > Player
から、Identifier を com.Company.ProductName
に変更します。
Assets > AvatarPlay Demo > 01. My Avatar Load Demo > Scenes
内にあるシーンを開き、実行してください。ゲームビューにアバターが表示されます。
キーボードの十字キーで移動が、スペースボタンでジャンプ、Shiftを押しながらの移動でダッシュができます。試してみてください。
実装を見る¶
実装を見てみましょう。シーン内のアバターは、プレハブ Assets > AvatarPlay > Prefabs > Avatar.prefab
をドラッグアンドドロップしたものです。このアバターはアバターの元となるプレハブです。
これだけではデフォルトのアバターがシーンに置かれるだけですので、スクリプトを使って自分のアバターをロードするよう実装します。対象のスクリプトは Assets > AvatarPlay Demo > 01. My Avatar Load Demo > Scripts > GameController.cs
で、シーン内のゲームオブジェクト GameController
に割り当てられています。
スクリプトの冒頭で、AvatarPlay
パッケージをインポートしています。
using AvatarPlay;
重要なのは次の行です。
// SDKを初期化
yield return AvatarSDK.InitializeAsync ();
// 自分のアバターコーデをロード
var avatarCoordinator = avatar.GetComponent<AvatarCoordinator>();
yield return avatarCoordinator.LoadAsync();
SDKの初期化(AvatarSDK.InitializeAsync
)は、アプリ起動時などに一度だけ呼び出す必要があります。この処理が成功すると、SDKを利用できるようになります。その後は、アバターのプレハブに割り当てられている AvatarCoordinator.cs
を取得し、LoadAsync
メソッドを呼び出してアバターが身につけている一連のアイテム(以降、アバターコーデ)をロードします。デモのシーンでは、デモ用に準備されているアバターがロードされるようになっています。
自社アプリに組み込む¶
アプリ登録と設定¶
コンソールのアプリより、アプリ登録を行い、Unity SDK を有効にします。このとき発行されるコンシューマシークレットは、Unity 側に設定するため失念しないようにしておきます。最低、「アプリ名」「開発用のアプリかどうか」「Identifier」を設定してください。「Identifier」は Unity 側に設定する値と同じ値を設定する必要があります。その他の項目は後で変更可能です。
Unity 側の設定¶
デモ同様、Unity SDK を自社アプリのプロジェクトにインポートします。コンソールから発行されたアプリIDとコンシューマシークレットは、「Assets > AvatarPlay > Resources」にある設定ファイル AvatarPlayConfig
に設定します。
実機配備¶
デモと同様にアバターをロードする実装を行い、実機に配備してください。デフォルトのアバターがロードされれば成功です。
Warning
デモアプリのデータが残っている場合、認証エラーが発生します。 プログラムから AccessToken.Set("");
を1度だけ呼び出してトークンを削除するか、Unity エディタの「Edit > Clear All PlayerPrefs」から PlayerPrefs を初期化してください。後者の場合、Avatar Play 以外を含む PlayerPrefs のデータが削除される点に注意してください。