Unity SDK
Framedash Unity SDK を使用して、パフォーマンステレメトリを自動収集する方法を説明します。
- Unity 2022.3 以上
- .NET Standard 2.1 / .NET Framework 4.x
インストール
Section titled “インストール”Unity Package Manager (推奨)
Section titled “Unity Package Manager (推奨)”- Window > Package Manager を開く
- 「+」 > 「Add package from git URL…」を選択
- 以下の URL を入力:
https://github.com/crane-valley/framedash-unity-sdk.git特定のリリースに固定するには、バージョンタグを付与します:
https://github.com/crane-valley/framedash-unity-sdk.git#v0.1.0起動時に一度だけ SDK を初期化します。たとえば永続化した GameObject の MonoBehaviour から初期化します:
using System.Collections.Generic;using Framedash;using UnityEngine;
public sealed class GameBootstrap : MonoBehaviour{ // API キーは Inspector で設定するか、ScriptableObject やプラットフォームの // シークレットストアから読み込みます。環境変数はモバイル/コンソール/WebGL // では利用できないため、Environment.GetEnvironmentVariable は使用しません。 [SerializeField] private string _apiKey;
private void Awake() { TelemetrySDK.Initialize( apiKey: _apiKey, buildId: Application.version); }}endpointUrl は任意で、省略時は https://ingest.framedash.dev/v1/events が使われます。ローカルやセルフホストの ingest を指定する場合に明示的に渡してください。
パフォーマンスデータの自動収集
Section titled “パフォーマンスデータの自動収集”SDK は以下のデータを自動的に収集します:
- FPS — フレームレート
- Frame Time — フレームあたりの処理時間
- Memory — マネージドヒープ + ネイティブメモリ使用量
カスタムイベントの送信
Section titled “カスタムイベントの送信”TelemetrySDK.Instance.Track( eventName: "player_death", mapId: "map_01", position: transform.position);カテゴリ属性や数値メトリクスを付与する場合は、オプションのディクショナリを渡します:
TelemetrySDK.Instance.Track( eventName: "player_death", mapId: "map_01", position: transform.position, attributes: new Dictionary<string, string> { { "cause", "fall_damage" } }, metrics: new Dictionary<string, float> { { "health", 0f } });プレイヤーの識別 (任意)
Section titled “プレイヤーの識別 (任意)”デフォルトではイベントは匿名で送信されます。プレイヤーのログイン後に SetPlayerId を呼び出すと、以降のイベントがそのプレイヤーに関連付けられます:
TelemetrySDK.Instance.SetPlayerId(playerId);