Version: 2023.2
言語: 日本語
XR プロバイダーの作成
サブシステムのランタイム検索とアクティベーション

UnitySubsystemsManifest.json

UnitySubsystemsManifest.json には、プラグインがロードされる前に照会できるプロバイダーに関するメタデータが含まれています。このディクショナリの値は、C# で SubsystemDescriptors の特定のインスタンスを生成するために使用されます。例えば、displays リスト内の情報は、XRDisplaySubsystemDescriptors を生成するために使用されます。

.json ファイルの例

{
    "name": "PluginName",
    "version": "1.0.0",
    "libraryName": "UnityXRDisplayExample",

    "displays": [
        {
            "id": "Display0",
            "supportedMirrorBlitReservedModes" : ["leftEye","rightEye", "sideBySide"]
        }
    ],
    "inputs:": [
        {
            "id": "MockHMD Head Tracking Stationary"
        },
        {
            "id": "MockHMD Head Tracking Simulated"
        }
    ]
}
メタデータ 説明 
name プロバイダーの名前。ネイティブプラグインの RegisterLifecycleHandler 呼び出しの最初のパラメーターと一致する必要があります。将来的には、UI に表示されるようになる可能性があります。
version 現在は使用されていません。将来的には、UI に表示されるようになる可能性があります。
libraryName プロバイダーのネイティブプラグインバイナリの名前 (拡張子なし) と一致する必要があります。
displays Display サブシステムプロバイダーのコレクションです。
id このディスプレイのプラグイン設定の識別子です。id は、そのサブシステムのネイティブプラグインの RegisterLifecycleHandler 呼び出しに渡した文字列と一致しなければなりません。ネイティブプラグインがそれぞれに対して RegisterLifecycleHandler を呼び出す場合は、複数の display を持つことができます。
inputs Input サブシステムプロバイダーのコレクションです。

マニフェストファイルには、id の後に、他の displays を加えることができます。サブシステムがどのパラメーターが有効かを明示します。

XR プロバイダーの作成
サブシステムのランタイム検索とアクティベーション