Unity デバッグ
このページでは、現在の公開 SDK で実行できる Editor デバッグを扱います。 先に インストール と Quick Start を確認してください。
接続成功の基準
Section titled “接続成功の基準”Core デスクトップ機能の成功条件は次のとおりです。
InitializeAsync()が成功する。IGPRuntimeManager.IsDesktopSessionAttached == trueになる。- ゲーム認可や実績など、対象機能が期待した結果を返す。
これはルーム参加や RoomNode Game データプレーン接続を意味しません。
Editor で Desktop 機能を確認する
Section titled “Editor で Desktop 機能を確認する”通常は Desktop Executable Path Debug Override を入力する必要はありません。
空の場合、SDK は SDK Environment に対応するデスクトップクライアントを
起動し、Unity Editor のプロセスパスと appId を渡します。接続許可は
デスクトップ側のデバッグ規則で判定されます。
インストール済みゲームの再現や exe 紐付けを調査する場合だけ override を
指定します。D:\builds\MyGame\MyGame.exe のようなゲーム自身の Windows
実行ファイルを指定し、デスクトップクライアントは指定しません。
PRODは IndieGamesPass を使います。PREVIEWは IndieGamesPass Preview を使います。DEVは IndieSpark を使い、Desktop Launch CommandまたはINDIEGP_DESKTOP_PATHの明示指定を許可します。
この override は Editor 内だけで有効です。ビルド済み Player は自身の exe パスを使います。
IGPConfig の Debug Logging を Error、Warning、Info、Debug の
いずれかに設定できます。実行中にも一時的に変更できます。
runtimeManager.Config.debugLogging = IGPLogLevel.Debug;リリースビルドでは詳細ログを無効にしてください。ログと例外には session token、RoomNode token、その他の接続 credential を含めてはいけません。
現在の Multiplayer 状態
Section titled “現在の Multiplayer 状態”Core は現在の Unity runtime platform を Desktop、Mobile の順に判定し、
一致した Host runtime を 1 つだけ作成します。attach 失敗で platform は
切り替わらず、設定項目もありません。Multiplayer はこの選択に関与せず、
引数なしの作成 API は現在の Core provider
から descriptor を取得し、descriptor overload は呼び出し元から明示的に
受け取ります。Runtime は KCP/TCP reliable と任意の UDP unreliable Game lane
だけへ接続します。
次の旧フローは目標動作ではなく、新規接続の受け入れ条件にしないでください。
- Hosted launch package または launch ticket による自動参加
Connect Current Test RoomRoomChanged、CurrentRoomData、Runtime のルームコマンドを Game データ 接続成功の根拠にすること
Multiplayer の受け入れ条件は IsRuntimeCreated、RoomNode Game lane readiness、
ゲームメッセージ送受信、transport fault だけに限定し、Gateway のルーム状態に
依存してはいけません。
よくある問題
Section titled “よくある問題”- 常に
detached: デスクトップへのログイン、現在のappIdのデバッグ 権限、SDK environment を確認します。 - Core は成功するがルームイベントがない: 目標境界では正常です。Core は ルームを所有せず、Runtime は Gateway イベントを公開しません。
- Core は成功したが Runtime が作成されない: Host descriptor 経路がない 場合の想定された soft failure です。warning を確認し、経路修正後に明示的な retry API を呼び出します。