LoginSignup
0
0

More than 1 year has passed since last update.

Unityのテスト(NUnit)でVRChat SDKのコンポーネントが参照できない

Posted at

Unityのテスト(NUnit)でVRCSDKのコンポーネントが参照できない問題にぶつかったので、対処方法を書きます。

前提として、テストコードで自作クラスを参照するにはUnityでライブラリの参照を設定しなければなりません。
設定方法は以下の記事で紹介されていました。
https://qiita.com/kazukomati/items/d5f5bec204ce99ee7ad5

そして、VRChat SDKを参照する場合にも、Unityでライブラリの参照を設定する必要があります。

VRChat SDKのライブラリの参照設定方法

  1. テストコードを置いているフォルダ内の*.asmdefをクリック
  2. インスペクタの項目のAssembly References(下記画像赤囲み)でVRCSDKA.dllやVDCSDKBase.dllなどの必要なライブラリを追加
  3. Applyを押す

無題.png

Assembly Referencesに追加するライブラリは、テストで参照したいコンポーネントによりますが
VRCAvatarDescripter,PipelineManager,VRCPhysBoneを参照する場合は、画像のライブラリが必要でした。

経緯

VRChatのアバターの再設定を簡単にするための、VRoidAvatarSetupUtilsというUnityエディタ拡張を作っています。

このアプリのテストをUnity Test Runner(NUnit)で書いており、テストコードに以下のような処理を書きました。

VRCAvatarDescriptor sourceVRCAvatarDescriptor = (VRCAvatarDescriptor)sourceObject.GetComponent<VRCAvatarDescriptor>();
GameObject.DestroyImmediate(sourceVRCAvatarDescriptor);

VRCAvatarDescriptorコンポーネントを参照するためにライブラリの参照が必要なのは分かるが、どこから設定すればよいのか分からない…という感じでしばらくハマっていました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0