見出し画像

VRChat初心者の躓きやすいUnityエラーの対処法

はじめに

一念発起して、初めてワールドやアバターを作ろうと思っても、エラーが起こってUnityが動かなくなってしまったら、初心者の人はどうやって直していいのか分からないし、お手上げ状態だと思います。

今回はそんなUnityのエラーの解消するための糸口をお教えしたいと思い、この記事を執筆しました。

VRCSDKのBuildボタンが消えた!

という経験をしたことがある人は少なからず居ると思います。
実はこれもUnityのエラーによるものだったりします。

UnityのConsoleを有効活用して、直しましょう。

下の画像を参考に、画面左側にあるConsoleというタブを開いてみてください。

画像1

するとこんな風に項目が沢山出てくると思います。これらはUnityのログの一覧です。

画像2

項目の左側をよく見てください。アイコンがありますよね?
これは重要度を表しています。白<黄色<赤と、分かりやすくなっています。

画像7

白い吹き出しにビックリマークのアイコンは最も影響が無いものです。
例えば内容を意訳すると、
『これが正常に終わりましたよ!』
とか
『ここに出力しておきましたよ!』
みたいな結果報告のような内容が大半です。

画像7

黄色の三角形にビックリマーク。これはちょっと問題はありますが、大きい影響はありません。
内容を意訳すると
『ここ、こうなってるけど本当に大丈夫?』
とか
『これ使われてないけどいいよね?』
とかそういった類の警告です。

画像7

最後に赤い8角形にビックリマーク。これは明確に問題があるエラーです。ただし、このエラーの中には、意訳すると
『実行しようとして失敗しました!』
みたいなものも含まれており、無視してもUnityが問題なく動くものと、Unityが上手く動かなくなるものが混在しています。

では、優先的に直すべきものを教えます。
『Consoleタブの左上のClearボタンを押して、残ったエラー』です。
これをやると、大体は1個くらいに絞られます。

ログをクリックして選択すると、下の画像の赤枠で囲んだあたりに文章が表示されますので、あとは文章の1文目の一部分をコピーして、GoogleなりTwitterなりで検索をかけると、何かしら対処法が出てくることでしょう。

画像7

一通り対処できると下の画像のように、Clearボタンを押しても何も出てこなくなります。

画像3

この状態になるとUnityは正常に動くようになり、おそらくVRCSDKのBuildボタンは無事復活しているでしょう。お疲れさまでした。


そもそもエラーを起こさないためには

一番大事なのは
「導入手順とその順番をきちんと守りましょう」
ということです。

人間、慣れてくると、つい手順の一部を省略したり、入れ替えたりしてしまいますよね?

Unityは良い感じに融通を利かせてくれません。
横着して手順を省いたり入れ替えたりするとエラーが起きます。

なぜなら「規定された動作しかできない」機械だからです。

馴染み深い例で言えばプリンターが分かりやすいでしょうか。
インク・紙・印刷データの3つが揃って初めて印刷できますが、1つでもないとエラー画面になってしまい、印刷できなくなってしまいますよね?

Unityも同じです。
前提とするものがないと、次のステップに進めないのです。
ただしプリンターと違って厄介なのは、材料の間に依存関係があったりすることです。

例えば、あることをするのにA、Bの2つの材料が必要な時。
BがAに依存しているのであれば、A→Bの順番で用意してあげる必要がありますよね?

ここでB→Aの順番で用意してしまうとエラーを起こします。
BはAがないと成り立たないので当然ですね。

順番を守ろうというのは、こういう事情があるからです。
導入手順とその順番をきちんと守ればエラーが起きる可能性はぐっと減るはずです。
(色々な要因があるので0にはなりません。それらのケースについて説明していくと非常に長くなってしまうので、別の記事で個別に説明する予定です)

エラーの原因を少なくしよう
(2023/11/30追記)

久しぶりに読み返したら、本当に最小限しか書いてないな~と思ったので追記します。

初心者の人が良くやりがちなのは、エラーの原因を複数作ってしまい、どこから解決したらいいのか分からなくなってしまうことです。

そこで、それを防止するオススメの習慣として
『新しい何かを追加(インポート)したら、コンソールをチェックする』
『既にある何かを削除したら、コンソールをチェックする』

を心掛けると良いと思います。

基本的に、今まで大丈夫だったプロジェクトがエラーで動かなくなるタイミングというのは、何かをインポートした時か、何かを間違って削除した時です。

インポートしたときに起こるエラーは、何か前提となるものが入っていないケースや、その環境では利用できないものを入れてしまった場合が多いです。

間違って削除した時は、先ほど説明した依存関係を破壊してしまって、エラーになっていることが多いです。

それぞれの習慣を心掛けていれば、何が原因でエラーが起こったのかが分かりやすくなるはずです。

インポート時にエラーが起こった場合は、その時インポートされたファイルを削除するだけでエラーが解消されます。
ですので冷静に、原因を特定してください。手順を忘れて、何か入れ忘れてないか?とかバージョンが間違っているか?などを疑うといいでしょう。

インポートされたファイルについては、インポート時に以下のようなリストが出てくると思いますが、このチェックが入っているものが追加されます。

削除したい時はこのリストに乗ってるものを削除すればOKです。

間違って削除してしまったときは、削除してすぐなら冷静に[Ctrl]+[Z]のショートカットを押すことで元通りにできます。
ただし、Unityを一度閉じてしまってると駄目なので、その時は大人しく消してしまったファイルのあるUnityPackageを再インポートしましょう。

それと最後にもう一つ、Unityの動作がおかしくなっているケースも実はあったりします。

もし謎のエラーが起こった時は、一度何も考えずにUnityを閉じて、もう一回開きなおすと直ることも普通にあります。

ですので、こちらを試してから、それでも直らなかったら、エラーの解消に挑戦するのが良いかもしれません。

おわりに

以上、Console周りの話でした。

今回の記事は、非エンジニア系の人が読んでもギリギリ理解できるように、かなり噛み砕いて書くことに注力しました。
今後もそういう感じで書いていきたいなと思っています。

途中でサラッと書いてますが、VRChat関係のことを調べるならTwitterをお勧めします。手前味噌でアレですが、理由とかはこの記事に書いてます。

最近月1回くらいのペースで記事を書けていますが、気力が持つ範囲でこのペースで書き続けていきたいなと思っています。

この記事が助けになればいいなーと思いつつ締めさせていただきます。
ではでは~(*'ω'*)ノシ



この記事が気に入ったらサポートをしてみませんか?