ゲームをビルド時にVRCCore-Editor.dllのエラーが出る問題【Unity】

雑記/その他
雑記/その他ゲーム

ゲームにvrchatのモデルを使った事でVRC SDKに関するエラーがビルド時に出ました。vrchatやVRC SDKに関する知識は全くありません。ただunityで作るゲームで3Dモデルをちゃんと動かすのにSDKが必要だったので入れてあっただけです。この記事はとりあえずビルド出来れば良い人向け。

スポンサーリンク

エラーが出る箇所を全てコメントアウト(//)して無理やりビルドした

ネットで情報を見つけるのが困難だったのでAIと話ながら後は海外の掲示板で見つけた事を試してどうにかなりました。正直無理やりやってる感がすごくていつまたビルドできなくなるかが分からない。絶対に安心だと思わないで下さい。

試す場合は自己責任でお願いします。

スポンサーリンク

VRCCore-Editor.dllの設定を変更する

  1. Packages > VRChat SDK – Base > Runtime > VRCSDK > Pluginsにある VRCCore-Editor.dll を選択します
  2. Inspectorで「Define Constraints」リストを編集し、「UNITY_EDITOR」を追加して「apply」を押す

この後AIに聞くと大体「エディタ専用コードを条件付きコンパイルで囲む」(※下で解説)って言ってくるんですけど、これはスルーしてまずゲームをビルドしてみる。
そしたらまた違うエラーが出てくるので、~.csファイルの場合は該当する行を//でコメントアウトしてまたビルドしてみる。

そしたら今度は違う「SDKBase-Legacy.dll」という最初と似たようなファイルのエラーが出たのでこのファイルに1,2をしてビルドする。
これらを繰り返しているとエラーがなくなって私の環境だとビルド出来ました。
あまりの力技過ぎたけどビルド出来てしまったので情報として記事にしました。ありがとう海外ニキ。

AIに聞くとSDKのバージョンが~Unityのバージョンが~と言ってきますが、unityの最新版とかくっそ古いバージョンなどを使っていなければ多少のバージョン違いは影響ないと思います。とりあえずAIはそういうテンプレート的な事を言っているので真に受けない方が良い。一応Unityのバージョンが41f1と22f1という差があったので22f1にしたものの多分関係なかった。もしunityのバージョンを変える場合はコピーしてやった方が安全かも。

今はとにかくビルド出来た事で喜んで記事を書きましたが、起動してみたら別のバグが起きてて萎えました。今からその修正を頑張るところです…。でも多分SDKの問題じゃないので大丈夫なはず…。

スポンサーリンク

エディタ専用コードを条件付きコンパイルで囲む

WorldValidation.csのLogger周りでエラーが起きてる場合に、そのcsファイルを編集する事でビルドまで行けたパターンもありました。

#if UNITY_EDITOR
例:Loggerと付いてる行
#endif

#if UNITY_EDITORと#endifでLoggerと書いてある行を全て挟んでいくとこれでもビルドは出来ましたが、多少のバグが出てました。

よくわからないですね本当に。

追記
色々試してもビルドすると揺れ物が揺れなくなりました。誰か分かる方いたら教えて下さい。VRC Phys Boneが機能していないっぽい。エディタ専用なのかな。そうだとしたら結構面倒くさい。

コメント

タイトルとURLをコピーしました