2026年9月更新。
アバターを買って、解説記事のとおりに進めて、アップロードを押した。返ってきたのは真っ赤なエラーの壁か、あるいは何の反応もなし。VRChat アバターがアップロードできないとき、原因のほとんどは十数種類の決まった一文のどれかです。この記事は、その一文ごとに「何を意味しているのか」と「どこを押せば直るのか」をまとめた対処集です。
エラー文は、実際に画面に出る英語のまま載せています。検索やページ内検索(Ctrl+F)で、自分の画面と同じ一文に飛んでください。どの項目も同じ順番で書いてあります。表示される一文、その意味、Unity での対処、そして Unity を開かずにアバターを作る場合にも起きるかどうか。先にひとつだけ。ここに並ぶエラーの多くは、アバターそのものではなく、アバターを包んでいる Unity プロジェクトの問題です。アバターが壊れたわけではないので、落ち着いて読み進めてください。
まずは SDK パネルの赤いびっくりマークを見る
アップロードできないとき、最初に目に入るのはたいてい VRChat SDK のビルド画面に並ぶ赤いびっくりマークです。ここは、アバター自体の問題を SDK が一覧にしてくれている場所です。
![]()
この一覧は、実在のアバターで SDK が出したものです。見方のコツは 3 つです。
- パフォーマンス系の赤は、PC ではアップロードを止めません。 ポリゴン数や PhysBone の数に付いた赤いマークは、アバターのパフォーマンスランクを説明しているだけです。赤が付いていても、PC 向けならそのままアップロードできます。
- Auto Fix は、出ている項目については安全です。 項目の横に Auto Fix ボタンがあれば、押して大丈夫です。ただし万能薬ではなく、ボタンのない問題は自分で直す必要があります。
- この一覧と Console は別物です。 SDK パネルが見ているのはアバター本体、Console が見ているのはプロジェクト全体です。SDK パネルがきれいでも止まるなら、次の節の Console を見ます。
一覧に知らない用語が出てきたら、アバター用語集でよく出るものを一行ずつ説明しています。
Console は「最後」ではなく「最初」の赤い行を読む
ひとつの習慣で、下のどの個別回答よりも多くのアップロードが直ります。
Console を開きます(Window → General → Console、または Ctrl+Shift+C)。右上の黄色い三角のボタンを押して警告を非表示にし、赤いエラーだけにします。そして、リストのいちばん上までスクロールします。いちばん下ではありません。
Unity は、最初に失敗したことを報告したあと、その連鎖で起きたことを全部並べます。だから最後の行はたいてい連鎖の余波で、原因は最初の赤い行です。黄色い警告はほぼ無視して大丈夫ですが、赤いエラーは無視できません。
もうひとつ覚えておくと効くのが、どこかに赤いエラーがひとつでもあると、全部が止まるということです。アバターとは無関係なパッケージの壊れたスクリプトでも、Unity はコードがコンパイルできないプロジェクトをビルドしません。SDK は早い段階であきらめ、見当違いのメッセージを出すことがあります。不思議なアップロードエラーの答えが「実は関係ないスクリプトのエラーだった」になりがちなのは、このためです。
アップロードボタンが押せない・反応しない
いちばんつらいのがこれです。読むべきエラーがないのですから。SDK のアップロード欄がグレーのまま、あるいはボタンを押しても何も起きない。よくある原因を、答えだった頻度の高い順に並べます。
- プロジェクト内の無関係なコンパイルエラー。 上の手順で Console を確認します。壊れたパッケージを直すか削除すれば、ボタンは戻ってきます。
- 名前やサムネイルが未設定。 SDK は公開前に両方を求めていて、ボタンの下にそう書いてあります。
![]()
- アバターが選ばれていない、または VRC Avatar Descriptor が付いていない。 SDK はアバターとして認識したオブジェクトしか一覧に出しません。下の Descriptor の項目を見てください。
- アカウントのトラストランクが足りない。 次の項目で説明します。
- SDK パッケージが古い。 Creator Companion でプロジェクトを開き、VRChat のパッケージを更新します。
- Windows の言語設定。 英語圏のフォーラムに、英語以外の Windows ロケールが原因でボタンが死んでいたという報告があり、地域設定の「Unicode UTF-8 を使用」オプションを切り替えて直ったそうです。別の投稿者は否定しているので、最後に試すものとして扱ってください。
そして正直な話をひとつ。Unity の再起動で直るケースも実際にそれなりにあり、なぜ直るのかを納得いく形で説明できた人はいません。Unity プロジェクトの診断そのものをしたくないなら、そのために Unity の画面を開かずに使える VRChat アバターエディタがあります。
「Not yet allowed to publish avatars」(トラストランク)
意味: 不具合ではありません。VRChat では、アカウントのトラストランクが New User 以上でないと何もアップロードできません。作ったばかりのアカウントは、その下の Visitor から始まります。
Unity での対処: 遊ぶことです。トラストランクは、VRChat で過ごした時間、フレンド作り、ワールド巡りで上がっていきます。切り替えられる設定はありません。
LAS では: 同じルールが適用されます。アップロードはあなたのアカウントで VRChat に送られるので、どのツールも(LAS も)これを飛ばせません。LAS のよくある質問でも触れています。LAS にこのための専用メッセージはなく、失敗したアップロードには VRChat 自身の理由がそのまま表示されます。
「You need an Animator component」/「A VRC_Avatar Descriptor is required」
意味: アップロードしようとしているオブジェクトが、アバターとしてセットアップされていません。VRC Avatar Descriptor は「これはアバターです」と VRChat に伝えるコンポーネントで、目の位置、口パクに使う表情シェイプ、動かすアニメーションなどを持っています。そして取り付け先として Animator が必要です。
Unity での対処: アバターのいちばん上のオブジェクトを選び、Add Component から VRC Avatar Descriptor を追加します。モデルファイルのインポート設定では Rig タブを開き、Animation Type を Humanoid にして Apply します。
LAS では: Descriptor を自分で追加することはありません。LAS は素体に付属しているセットアップ済みのアバターファイルを使い、そこにはすでに Descriptor が付いています。なお、Rig が Humanoid ではなく Generic でインポートされていることは、「T ポーズのまま固まる」報告の多くの原因でもあります。後ろの節で扱います。
VRChat の Blueprint ID とは: 「clearing blueprint ID」の直し方と別名アップロード
「Attempted to load the data for an avatar we do not own, clearing blueprint ID」
この系統でいちばん多く検索されている一文で、英語圏の公式フォーラムではこの一文のスレッドだけで 69,000 回以上閲覧されています。なので、いちばん紙幅を取ります。
そもそも Blueprint ID とは: VRChat のサーバー上にある、アバターの恒久的な住所です。avtr_79589db8-... のような形をしています。初めてアップロードしたときにアバターの Pipeline Manager コンポーネントへ書き込まれ、次のアップロードでは新しいアバターを作らずに同じアバターを更新するために使われます。お気に入りや、ワールドに置かれたアバターペデスタルも、この住所を指しています。
意味: アバターに付いている ID が、いまログインしているのとは別のアカウントのものです。実際のケースは 3 つです。
- ファイルが他の人から来たもので、その人の Blueprint ID が Prefab に残っている。クリエイターは販売前に消してくれることが多いものの、いつもではありません。友だちから受け取ったプロジェクトなら、ほぼ確実に残っています。
- 最初にアップロードしたのとは別のアカウント(サブアカウントなど)からアップロードしている。
- 欄は空に見えるのに、実は別のところが失敗している。 無関係なコンパイルエラーで SDK が途中で止まり、代わりにこの一文を出すことがあります。フォーラムの大きなスレッドでは、これが答えだった人がたくさんいました。なので、何より先に Console の最初の赤い行を読んでください。
Unity での対処: アバターを選び、Pipeline Manager コンポーネントで Detach を押してから、もう一度アップロードします。新しい Blueprint ID はアップロード時に作られます。3 のケースなら、先に Console のエラーを直します。
LAS では: 管理する ID 欄がありません。アバター名を付けて公開範囲を選ぶだけで、再アップロードは同じアバターを更新し、VRChat 上の ID を保ちます。ワールドやお気に入りからも、同じアバターを指したままです。
![]()
LAS でも起きうるケースがひとつあります。別のアカウントから最初にアップロードされたアバターは、そのアカウントからしか更新できません。LAS はこの一文の代わりに、「このアバターは別の VRChat アカウントのものです。最初にアップロードしたアカウントでログインしてください。」と表示します。アバターが Booth で購入したものなら、最初にアップロードするのはあなたなので、この話はそもそも関係ありません。
同じアバターを上書きせず、別名でもう 1 体アップロードしたい
Detach は、同じアバターを 2 体目として別名で公開する方法でもあります。Detach して、名前を変えて、アップロード。これで別々のアバターが 2 体になります。Detach しても、すでにオンラインにあるアバターが消えることはありません。消えるのは手元のファイルとアップロード済みアバターのつながりだけで、1 体目はそのまま残ります。
日本語の PC 名・ユーザー名・全角パスが原因のエラー
日本語環境でいちばん気づきにくい原因がこれです。
表示される一文: 「Illegal byte sequence」、ビルド中にいきなり出る NullReferenceException、あるいは説明もなくビルドが止まるだけ。症状がばらばらなので、原因にたどり着きにくいのが厄介なところです。
意味: Unity と VRChat のツールチェーンの一部は、いまでもファイルパスに半角英数字しか来ない前提で動いています。「太郎」のような Windows ユーザー名、「デスクトップ」という名前のフォルダ、プロジェクトのパスに入った全角文字やアクセント付きの文字が、ビルドを壊すことがあります。
Unity での対処: Unity プロジェクトを、半角英数字だけのパスに移します。たとえば C:\VRChat\ の直下です。Windows のユーザー名そのものが原因なら、重い対処になりますが、英数字の名前で新しい Windows ユーザーを作り、そのアカウントで作業します。
LAS では: 商品アーカイブの日本語ファイル名は、正しいエンコーディングで自動的に展開されます。一方、日本語の Windows ユーザー名が LAS に影響するかどうかは検証していないため、影響する・しないのどちらとも言えません。
エラー文ごとの対処
スクリプトが見つからない(Missing Script)
表示される一文: Console の「The referenced script on this Behaviour is missing」、またはインスペクター上で「Missing (Mono Script)」「The associated script can not be loaded」と表示されるコンポーネント。
意味: アバターの一部が、プロジェクトに存在しないコードを参照しています。たいていは、販売者の環境には入っていてあなたの環境には入っていないツールやシェーダーエディタです。とても古いアセットなら Dynamic Bone のこともあります。VRChat が何年も前に自前の PhysBone に置き換えた揺れもののツールで、いまはまったく受け付けられません。素体だけでなく衣装やアクセサリーにもよく付いてくるので、アバターに衣装を着せるときに気づきにくいつまずきどころのひとつです。
Unity での対処: アバターが前提とするパッケージを導入するか(商品ページにたいてい必要なものが書いてあります)、欠けているコンポーネントをひとつずつ、右上の三点メニューの Remove Component で削除します。パーツが何十もある素体では骨が折れ、ワンクリックで消す有料ツールもありますが、手作業のルートは無料で、ちゃんと直ります。
LAS では: 同じルールが適用されます。LAS は Missing Script を代わりに削除しません。アバターのビルド時には VRChat SDK が変わらずこれを報告するので、対処も同じく、商品ページにあるパッケージを導入することです。
アバターがピンク色になる・シェーダーがない
意味: ピンクは、プロジェクトにシェーダーがないマテリアルを Unity が塗る色です。色の問題ではないので、色改変では直りません。
Unity での対処: 商品ページに書いてあるシェーダー(定番は lilToon と Poiyomi)を、指定のバージョンで導入します。シェーダーが入れば、マテリアルはたいてい元に戻ります。ピンクのままなら、マテリアルごとにシェーダーを設定し直します。
LAS では: どのプロジェクトにも、動作確認済みのバージョンの lilToon と Poiyomi が入っています。自前のシェーダーを同梱しているアイテムは、そちらを使います。それ以外のシェーダーについては、アイテムを着せたあとに LAS がマテリアルを確認し、マゼンタで表示されるものを名前付きで知らせるので、どの販売ページを確認すればいいかがわかります。狙って色を変えたいなら、ライブで色改変する方法を別の記事にまとめています。
特定の Unity バージョンで「Error building avatar」
意味: VRChat が対応している Unity バージョンは常にひとつだけで、現在は 2022.3.22f1 です。別のバージョンで開いたプロジェクト(英語圏フォーラムの大きなスレッド 2 つの原因だった 2022.3.6f1 など)は、ビルド時に失敗することがあります。バージョンの移行が中途半端なプロジェクトは、さらに奇妙な失敗の仕方をします。
Unity での対処: VRChat Creator Companion から、対応バージョンでプロジェクトを開き、パッケージを更新させます。2 つ以上の Unity バージョンを渡り歩いたプロジェクトなら、正直に言って、新しいプロジェクトを作ってアバターを入れ直すほうが、修理するより早いことがよくあります。試す前にアバターの変更を安全に元に戻す方法を用意しておく価値があるのも、このためです。
LAS では: 起きません。LAS は必要な Unity のバージョンをセットアップ時に一度だけインストールし、その後も管理し続けます。
「Upload failed」、タイムアウト、途中で転送が止まる
意味: アバターの失敗ではなく、ネットワークの失敗です。あなたの回線、VRChat のサーバー、あるいはその途中のどこかで転送が切れています。
Unity での対処: もう一度試し、失敗が続くなら VRChat のステータスページを確認します。VPN を切って試すのも手です。不思議なことに、フォーラムの大きなスレッドには VPN を使ったときだけ成功した人もいました。失敗したアップロードが、オンラインにある今のバージョンを置き換えることはないので、再試行は安全です。
LAS では: 起きえます。インターネットはインターネットなので。LAS は「VRChat への送信が途中で失敗しましたが、途中までのアップロードが残ることはありません」と接続の失敗であることを伝えるので、再試行すれば大丈夫です。
Expression Parameters が多すぎる(Expression メモリ)
意味: 他のプレイヤーにも見える必要があるメニューのトグル、スライダー、ジェスチャー設定は、小さな共有メモリに保存されていて、VRChat はその上限をアバター 1 体あたり 256 ビットに決めています。シンプルなトグルは 1 ビット、スライダーや複数選択のスイッチは 8 ビット。ギミックを導入するたびにその設定が増えるので、衣装トグルの仕組みをいくつも入れ、フェイストラッキングのキットやギミックを足したアバターは、上限に届くことがあります。SDK の一覧にも警告が出て、収まるまでアップロードは通りません。
Unity での対処: アバターの Expression Parameters アセットを開き、他のプレイヤーと共有する必要のない設定(Synced をオフにする)や、もう使っていないギミック(削除する)を探します。設定を少ないビット数に詰め込む圧縮モードを持つギミックもあります。
LAS では: 上限は VRChat のものなので、同じく適用されます。アビリティパネルは使用量を常に表示し(「Expressionメモリ: 256ビット中88ビット使用」のように)、「アップロード」パネルも上限内のあいだはそれを繰り返し表示します(カバー画像がそれです)。メニューの項目を非表示にすると、メニュー以外にそのビットを使うものがなければ、アップロード時にそのビットが空きます。上限を超えた場合は VRCFury がビルド時にメニューを圧縮し、それでも収まらないときだけ、アップロードがエラーで止まります。
アップロードできたのに、様子がおかしい
アップロード自体は成功しているぶん、かえって混乱するのがこのグループです。
ゲーム内で T ポーズのまま固まる
意味: アバターがアニメーションしていないので、両腕をまっすぐ伸ばして立っています。よくある原因は、Rig が Humanoid ではなく Generic でインポートされていること、または Descriptor のアニメーションレイヤーが上書きされたり空になったりしていることです。
Unity での対処: モデルのインポート設定で Rig を Humanoid にして Apply します。次に Descriptor の Playable Layers を確認し、何も指していないものをリセットしてから、アップロードし直します。
Quest 向けにアップロードしたのに「PC only」と出る
意味: アバターの PC 版と Android(Quest)版は、ひとつの Blueprint ID を共有する別々のアップロードです。PC 版は上がっていて、Android 版が上がっていません。
Unity での対処: SDK の Builder でプラットフォームを Android に切り替え、Android の検証が指摘すること(PC よりずっと厳しいです)を直して、同じ Blueprint ID でもう一度公開します。
LAS では: 正直に言うと、LAS は現在 Quest や Android のアバターをビルドしません。LAS からのアップロードは PC アバターです。
アップロードできたのに、他の人には代わりのアバターが見えている
意味: アップロードのエラーではまったくありません。VRChat はすべてのアバターのパフォーマンスを評価していて、表示する最低ランクをあなたのアバターより高く設定しているプレイヤーには、代わりのアバターが見えます。モバイルのプレイヤーは、Poor と Very Poor のアバターが初期設定で非表示です。
Unity での対処: ランクを押し下げている項目を見つけて、その線より下に収めます。これは記事を分けました。手動ルートも含めて Very Poor のアバターを軽量化する方法にまとめています。
エラーが出る前に止まる: 最初に壊れるのはセットアップ
Console にたどり着く前に、ツールが起動しないこともあります。いちばん多いのは、VRChat Creator Companion が真っ白な画面のまま開くケースで、英語圏のヘルプフォーラムでは今年もっとも賑わったスレッドのひとつでした。これは Creator Companion アプリの問題で、アバターの問題ではありません。対処は、Creator Companion の更新か再インストールから始めます。
この記事全体がぐるぐる回ってきたパターンに、もう気づいたと思います。真っ白な画面、コンパイルエラー、バージョンの不一致、足りないパッケージ。そのほとんどが、アバター自体ではなく、アバターを包む Unity プロジェクトの問題です。
公開する前にテストする
この記事の半分を防いでくれる習慣が、公開前のテストです。
- SDK の Build Type にある Build & Test は、アバターをビルドして、公開せずに自分のゲームクライアントへローカルで入れます。ワールドで実際に着てすべてを確認でき、他の人には見えません。
- Gesture Manager のようなエミュレーターツールは、アップロードせずに Unity の中でアバターのジェスチャーやメニューを動かします。プロジェクトへの導入が必要ですが、一度入れてしまえばいちばん速く回せます。
LAS の「試してみる」は、同じことをセットアップなしで行います。アバターのジェスチャーやアバター自身のメニューごと、アプリの中でライブで動かします。何を確認できるかは「試してみる」のドキュメントで説明しています。
![]()
LAS で起きなくなるエラー、まだ起きるエラー
Layman’s Avatar Studio(LAS)は、公式の VRChat SDK を通してアバターをビルド・アップロードしつつ、Unity 側の作業を代わりに実行します。これで一群のエラーが消え、いくつかは残ります。両方を正直に書きます。Unity も英語も無理だと感じている人には、ここがいちばん直接の答えになるはずです。
起きないもの(あなたが壊すプロジェクトが存在しないので):
- 押せない SDK ボタン。 「アップロード」パネルには、代わりに準備チェックがあります(カバー画像のとおりです)。「VRChat へアップロード」ボタンは、素体が適用され、すべての変更がアバターに適用されると押せるようになります。押せないときは、どの行が待っていて何をすればいいかをチェックが教えてくれます。メニューのメモリの行は警告で、ボタンをロックすることはありません。
- 無関係なコンパイルエラー。 Unity プロジェクトを自分で開いたり管理したりすることがありません。
- Descriptor や Animator の不足。 素体付属のセットアップ済みアバターファイルを使うので、最初から付いています。
- Unity のバージョン違い。 必要なエディタを、正確なバージョンで一度だけインストールします。
- Blueprint ID の混乱。 再アップロードは同じアバターを更新し、ID を保ちます。
- 商品アーカイブの日本語ファイル名。 正しいエンコーディングで展開されます。
- Creator Companion。 開くべき Creator Companion がそもそもありません。
まだ起きるもの(LAS がほとんどをわかる言葉で伝え、残りは VRChat 自身の理由を表示します):
- New User 未満のトラストランク(VRChat 自身の理由が表示されます)。
- 別のアカウントから最初にアップロードされたアバターの更新。
- VRChat のログインが切れた場合。LAS は Unity の VRChat パネルでもう一度ログインするよう案内し、ログイン情報そのものを見たり保存したりはしません。
- VRChat のチェックがアバターを拒否した場合。技術的な理由が表示されます。
- メニューを圧縮しても VRChat の Expression メモリ上限に収まらないほど、アビリティが多い場合。
- ネットワークの失敗。
- 期待より低いパフォーマンスランク。アップロード後のレポートで確認できます。
- 標準的な衣装のボーン構成を持たない、ごく一部の商品。LAS は推測で済ませず、手動でのセットアップが必要だと伝えます。そのあたりは衣装がアバターの体についてこないときの対処で扱っています。
「アップロード」の流れ全体はアップロードのドキュメントに、「まだ起きるもの」のそれぞれは LAS のトラブルシューティングに項目があります。そして正直な限界をもう一度。LAS がアップロードするのは PC アバターだけです。
よくある質問
Blueprint ID を Detach すると、アバターは消えますか? 消えません。手元のファイルとアップロード済みアバターのつながりが外れるだけです。VRChat 上のアバターはそのまま残り、次のアップロードで新しいアバターが作られます。
Unity なしでアバターをアップロードできますか? どこかで Unity が動いていないとできません。公式 SDK は Unity の中でビルドするからです。省けるのは、あなた自身が Unity で作業することです。LAS がやっているのはそれで、Unity 側を裏で実行しています。
SDK はビルド成功と言ったのに、メニューにアバターがありません。 1〜2 分待ってから、Avatars の Personal を見てください。新しいアップロードは表示まで少し時間がかかることがあります。
友だちから送られてきたプロジェクトを直せますか? 直せます。まず Blueprint ID を Detach してください。そうしないと「clearing blueprint ID」の一文でアップロードが失敗します。そのあと、Console が報告するものを直します。
Missing Script を消す有料ツールは必要ですか? 必要ありません。コンポーネントを手で削除するのは無料です。有料ツールは、パーツの多いアバターで時間を節約してくれるだけです。
次は、コンソールを開かずに
LAS は無料プランのある Early Access として公開中です。無料でダウンロードしてアバターを開けば、何かをアップロードする前に、何が準備できていて何がまだなのかを「アップロード」パネルがわかる言葉で教えてくれます。各プランの内容は料金プランで確認できます。
この記事にない一文に出会ったら、その文面をそのまま Discord に持ってきてください。一緒に読み解きます。