# PC SDK Unityチュートリアル

UnityエンジンゲームにSTOVEPCDK2.0を適用する方法を学ぶ方法です。

confirm このチュートリアルを進む前に、STOVE Launcher (opens new window)をインストールしてSDK開発環境を準備するを参照して、App key、App secret、Game Idを事前に発行する必要があります。例はUnity 2017以上、Visual Studio 2017以上のバージョンをおすすめします。

# チュートリアル用のHelloStoveプロジェクトダウンロード

下記のリンクからチュートリアル用のHelloStoveプロジェクトをダウンロードします。

ダウンロードが完了すると、圧縮を解除します。
このプロジェクトはまだPCSDKが連動されていない状態です。 いまからPC SDK連動を始めます。

# プロジェクト環境を構成する

StovePCSDK_NETの圧縮を解いた後、x86(32ビット)フォルダとx86_64(64ビット)フォルダのいずれかを削除し、StovePCSDKフォルダをHelloStove_UnityプロジェクトのAssetsフォルダにコピー(上書き)します。 x86フォルダとx86_64フォルダが両方あると、ビルドエラーが発生する可能性があります。

# 1) シーン(Scene)実行

Unity EditorでHellow Stove_Unityプロジェクトを開きます。 Unity EditorツールバーのPlayボタンをクリックします。 すべての設定に異常がなければ、ゲームビューでシーンが実行されます。 Unity EditorツールバーのPlayボタンをもう一度クリックして、シーン実行を終了します。

Figure1

# 2) ビルドをする

File > Build Settingメニューをクリックします。
Build SettingsウィンドウでBuildボタンをクリックします。
Build Windowウィンドウでビルド結果が保存されるフォルダを選択します。
ファイル名の欄にHello Stoveを入力し、保存ボタンをクリックします。
すべての設定に異常がなければ、コンパイルエラーなしで正常にビルドされます。

Figure1

# 3) スクリプト作成準備

Assets > Stove PCSDK > Scenes > Scripts > StovePCSDKManager.cs ファイルを開きます。

Figure1

# 4) StovePCConfig

Assets > StreamingAssets > Text > StovePCConfig.Unity.txtファイルを開いて
Stove Studio (opens new window)で事前に発行されたAppKey、AppSecret、GameId値を満たして保存します。

Figure1

confirm
YOUR_APP_KEYYOUR_SECRET_KEYYOUR_GAME_IDは事前に発行されたデータにご変更ください。
もし、STOVE Studioに入店申請したSTOVEアカウントでSTOVEランチャーにログインせずにStovePC.Initialize関数が呼び出されると、150エラーコード(sgup初期化失敗)が発生します。

# SDK初期化

StovePCSSDK_NETを初期化するにはStovePCConfigStovePCCallback構造体に値を埋めてStovePC.Initializeメソッドを呼び出します。
以下のコードの欠片をButtonInitialize_Clickメソッドに作成します。

confirm STOVEランチャーにログインしていない状態でStovePC.Initialize関数を呼び出すとエラーが発生します。

StovePCConfig config = new StovePCConfig
{
    Env = this.Env,
    AppKey = this.AppKey,
    AppSecret = this.AppSecret,
    GameId = this.GameId,
    LogLevel = this.LogLevel,
    LogPath = this.LogPath
};

this.callback = new StovePCCallback
{
    OnError = new StovePCErrorDelegate(this.OnError),
    OnInitializationComplete = new StovePCInitializationCompleteDelegate(this.OnInitializationComplete),
    OnToken = new StovePCTokenDelegate(this.OnToken),
    OnUser = new StovePCUserDelegate(this.OnUser)
};

sdkResult = StovePC.Initialize(config, callback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Stove PC.Initialize関数の呼び出しが正常に完了した時のコールバックを作成します。
以下のコードのかけらをOnInitializationCompleteメソッドに作成します。

sb.AppendLine("OnInitializationComplete");
sb.AppendFormat(" - nothing");
1
2

# SDK終了

STOVEサービスの使用が終わった後、使用中のリソースを整理するにはStovePC.Uninitializeメソッドを呼び出します。
以下のコードの欠片をButtonUninitialize_Clickメソッドに作成します。

sdkResult = StovePC.Uninitialize();
1

# ユーザー情報を得る

ログインしたユーザー情報を取得するためにはStovePC.GetUserメソッドを呼び出します。
以下のコードの欠片をButtonGetUser_Clickメソッドに作成します。

sdkResult = StovePC.GetUser();
1

GetUser関数の呼び出しが正常に完了した時のコールバック関数を作成します。 以下のコードの欠片をOnUserメソッドに作成します。

sb.AppendLine("OnUser");
sb.AppendFormat(" - user.MemberNo : {0}" + Environment.NewLine, user.MemberNo.ToString());
sb.AppendFormat(" - user.Nickname : {0}" + Environment.NewLine, user.Nickname);
sb.AppendFormat(" - user.GameUserId : {0}", user.GameUserId);
1
2
3
4

# トークン情報を得る

ログインしたユーザーのトークン情報を取得するにはStovePC.GetTokenメソッドを呼び出します。
以下のコードの欠片をButtonGetToken_Clickメソッドに作成します。

sdkResult = StovePC.GetToken();
1

confirm トークンとは? STOVEランチャーにログインしたユーザーのアクセストークン(Access Token)で、ゲームサーバーはこのアクセストークンをSTOVE認証サーバーに渡してログインしたユーザーの検証を行うことができます。 アクセストークンの詳細な説明は、store.support@smilegate.comで技術サポートを受けることができます。

GetToken``関数の呼び出しが正常に完了した時のコールバック関数を作成します。 以下のコードの欠片をOnToken`メソッドに作成します。

sb.AppendLine("OnToken");
sb.AppendFormat(" - token.AccessToken : {0}", token.AccessToken);
1
2

# ビルド及び実行

作成したスクリプトを保存します。
Unity EditorでFile > Build & Runメニューをクリックします。

Figure1

Sereen resolutionフィールド値を1024 x 768項目に設定し、 Windowed チェックボックスをチェックします。
Play!ボタンをクリックします。

confirm異なる解像度で設定する場合、一部のボタンが正常に出力されないことがあります。

下の図のようにRunCallbackをまずチェックし、Load Configボタンから順番にクリックして結果を確認してみます。

Figure1

おめでとうございます!
Hello Stoveチュートリアルを成功的に完了しました。

Last Updated: 2023/11/22 13:25:27