VRChat 非公式日本語ドキュメント

VRChat SDKの検出

UnityプロジェクトでVRChat SDKを検出する方法はいくつかあります。これは、VRChat SDKに依存しないUnityツールやライブラリを開発する際、それでもVRChatのSDK APIを活用したい場合に役立ちます。

Version Definesの使用

VRChat SDKを検出する最良の方法は、アセンブリ定義ファイル(assembly definition file)のVersion Definesを使用することです。

com.vrchat.basecom.vrchat.avatars、または com.vrchat.worlds がインストールされている場合に、アセンブリ内でシンボルを定義できます。 インストールされているVRChat SDKのバージョンがツールと互換性がある場合にのみ、「Expression」プロパティを使用してシンボルを定義することを推奨します。 VRChat SDKのバージョン管理については、Creation Companionのドキュメントを参照してください。

Version DefinesはUPMパッケージ向けの機能であるため、この方法はUnityでUPMパッケージとして扱われるVPMベースのSDKでのみ機能します。 レガシーな.unitypackageベースのSDKも検出したい場合は、VRCSDKが定義するシンボルと同じシンボルを定義するか、すべてのファイルに以下のコードを追加することで、以下のレガシーな方法を使用してください。

#if !YOUR_VRCSDK3_AVATARS && !YOUR_VRCSDK3_WORLDS && VRC_SDK_VRCSDK3
#if UDON
#define YOUR_VRCSDK3_WORLDS
#else
#define YOUR_VRCSDK3_AVATARS
#endif
#endif

レガシーなVRCSDK定義のスクリプトシンボルの使用(非推奨)

VRChat SDKのインストールを検出するもう一つの方法は、VRCSDKが定義するスクリプトシンボルを使用することです。 すべてのVRCSDKプロジェクトにはVRC_SDK_VRCSDK3が定義され、ワールドプロジェクトにはUDONが定義されます。

この方法は非推奨であり、将来削除される予定です。この方法だけに依存しないでください。

旧バージョンのVRChat SDKでは、VRC_SDK_VRCSDK3およびUDONシンボルが内部的に使用されていました。しかし、これらのシンボルはプロジェクト全体で有効になるため、多くのツールがVRChat SDKの検出にこれらのシンボルを利用しています。

現在、VRChat SDKにおけるこれらのシンボルの使用はすべてVersion Definesへ移行されています。可能な限り早急にVersion Definesへ移行してください!

最終更新: