セーフモード (Safe Mode)

参考:

2020.2 ベータ版で Unity セーフモードが利用可能になりました | Unity Technologies Blog [公式]

Safe Mode | Unity 2020.3 Manual [Official]

クラッシュログ

エディタークラッシュログの場所
  • Windows%LOCALAPPDATA%\Unity\Editor\Editor.log

動画:

Unity Crashed! Why? (Code Monkey)

ドキュメント:

ログファイル | Unity マニュアル [公式]

参考:

Unity のログファイル (Editor.Log) を直接エディタで開く – Qiita

Unity エディターがクラッシュ/強制終了した時にログから原因を見つける方法と、保存していないシーン情報の復旧方法 | kan のメモ帳

Unity エディターが落ちるとき – Qiita

ログファイルの提出を求められたのですが、どこにあるのでしょうか? – Unity

Unity Game Crash, is there a log file? – Unity Forum

Where to find the crash log? – Unity Forum

Unity Editor crashes when opening project, with no error in Editor.log – Stack Overflow

キャラクターが動かない/歩けない

  • 必要なコンポーネントが付与されていない。
  • Input Manager が設定されていない。
  • 床とキャラクターの衝突が設定されていない。
  • 必要なプロパティの値が設定されていない。(移動速度など)
  • カプセルコライダーが大き過ぎてキャラクターが浮いている。
  • ナビメッシュ (NavMesh) が構築されていない。
  • Animator Controller が壊れている。
  • スクリプトエラー

参考:

Why won’t my player move? – Unity Answers

can’t move the player – Unity Forum

player animating but not moving to marker – Adventure Creator forum

cannot be multi-edited エラー

インスペクター上で次のようなメッセージが出て操作できない。

Components that are only on some of the selected objects cannot be multi-edited.

参考:

オブジェクトの複数選択を使いこなして効率アップ! | エクスプラボ

C# unity custom editor multiple different components but same base class – Unity Answers

テキストが真っ黒になる

参考:

Text turns to black for UI in editor after making a build | Unity Issue Tracker

All UI Text is Black – Unity Forum

Unity UI Text Turning Black – Stack Overflow

スクロールバーが表示されない

参考:

Help with scroll bars in an Editor Window – Unity Forum

Custom EditorWindow Scrollbars not working with GUILayout areas – Unity Answers

Editor GUI ScrollView Actual Scrollbar Not Showing Up?? – Unity Answers

JSON parse error

JSON が正常にパースできない旨のエラーが発生する。

Error detecting Visual Studio installations: System.ArgumentException: JSON parse error: Invalid escape character in string.

参考:

Error detecting Visual Studio installations: System.ArgumentException: JSON parse error: Invalid escape character in string | コガネブログ

Unity 2020 で出てくる Error detecting Visual Studio installations への対処法 – Qiita

Unity 2020 で VSCode 出てくる謎のエラーと設定方法 | CodeLab 技術ブログ

Failed to load エラー

現象:

アセットが読み込めない旨のエラーが発生する。

Failed to load: File may be corrupted or was serialized with a newer version of Unity

対処法:

プラットフォームを切り替える。

参考:

Error: Failed to load […] because it was serialized with a newer version of Unity – Unity Forum

self-intersecting 警告

現象:

モデルのポリゴンが交差しているため除去された旨の警告が発生する。

A polygon of xxx is self-intersecting and has been discarded.

対処法:

  • 重複している頂点を削除する。
  • 5角形以上のポリゴン (N-gon) を四角ポリゴンまたは三角ポリゴンに分割する。

参考:

A polygon of modelName is self-intersecting and has been discarded | Yousuf Azad Sami

How to Quickly and Easily Convert N-gons to Quads or Tris in Blender | Luke B

Null Reference Exception

参考:

NullReferenceException: Object reference not set to an instance of an object | 初心者にも分かるように unity でゲームを作りたい

ClearPreviewCache error | Unity Forum

NullReferenceException on GameObjectInspector Editor Error | Unity Answers

Errors appear in the console when game object is selected in hierarchy | Unity Issue Tracker

NullReferenceException from UnityEditor.InspectorWindow.GetEditorsWithPreviews – Stack Overflow

What is a NullReferenceException, and how do I fix it? – Stack Overflow

Null Reference when Applying Prefab – Stack Overflow

never assigned 警告

値が割り当てられていない旨の警告が表示される。

warning CS0649: Field is never assigned to, and will always have its default value `null'

参考:

Unity で発生する Warning CS0649 の対処方法 | 3テラバイト

Unity でよく出る警告 CS0168 CS0414 CS0649 の意味 | プログラミングとかブログ

CS0169 と CS0649 の警告を無効化できるようになった (Unity 2020.1 新機能) | コガネブログ

Visual Studio で表示される「warning CS0649: Field is never assigned to」の警告を一括で無効化してしまうエディタ拡張 | コガネブログ

Warning CS0649 をどうしても解消したいときに読む記事 | KuroMikan Games

CS0649 | Microsoft Docs [公式]

warning CS0649: Field is never assigned to, and will always have its default value `null’ – Unity Answers

アーキテクチャ不一致の警告

現象:

プロジェクト内でアーキテクチャが不一致である旨の警告が表示される。

構築されているプロジェクトのプロセッサアーキテクチャ "AAA" と、参照 "XXX" のプロセッサアーキテクチャ "BBB" の間には不一致がありました。この不一致は、ランタイムエラーを発生させる可能性があります。

原因:

Any CPU として指定されているアセンブリが、特定のアーキテクチャのみ (x86 あるいは x64 など) で動作するアセンブリに依存している。

対処法:

依存関係のあるアセンブリ間でアーキテクチャの指定を一致させる。

参考:

MSB3270: 構築されているプロジェクトのプロセッサ アーキテクチャ “MSIL” と、参照 “xxxxx.exe” のプロセッサ アーキテクチャ “x86” の間には不一致がありました。 | 10 million bugs in my code

「構築されているプロジェクトのプロセッサ アーキテクチャ “**” と、参照 “**” のプロセッサ アーキテクチャ “**” の間には不一致がありました。」への対処方法 | so-zou.jp

MSB3270: ビルドされているプロジェクトの ‘architecture’ のプロセッサアーキテクチャと、参照 ‘reference’、’architecture’ のプロセッサアーキテクチャの間で不一致が発生しました。 | Microsoft Learn [公式]

How do I fix the Visual Studio compile error, “mismatch between processor architecture”? – Stack Overflow

GUID の重複を解消する

参考:

Unity 2018.1 の GUID かぶりに注意 | mattak’s blog

Unity の GUID の conflict 時の解決のされ方 – Qiita

GUID conflicts – 2018.3 | Unity Forum

アセットがインポートできない

対処法:

  • Unity ID で正常にログインできているか確認する。
  • パッケージのキャッシュを削除する。
  • プロキシの設定を確認する。
  • ファイアウォールを適切に設定する。
  • Unity Package Manager Diagnostics を実行する。

参考:

Asset Store から Import できない時の対処法 | YTK

Asset がインポートできないときの対処 | エンジニア戦記

Package Manager で My Assets が取得できないときの対処 | IT Learning

Package Manager でアセットを更新できないときの解決法 | ゆみねこブログ

購入したアセットをダウンロードしようとしたら、ダウンロードしたアセットをインポートすることができません | ユニティ・テクノロジーズ・ジャパン株式会社 [公式]

PackageManager が動作しない | ユニティ・テクノロジーズ・ジャパン株式会社 [公式]

トラブルシューティング – Unity Package Manager | Unity マニュアル [公式]

ネットワーク問題 | Unity マニュアル [公式]

Asset Store からアセットが import できない – teratail

Can’t import asset from AssetStore – Unity Answers

Can’t import assets – Unity Answers

Can’t import all assets of a package – Unity Forum

Problem with Import unity package – Unity Forum

Package Manager forever “Loading packages …” – Unity Forum

Unity Package Manager Error: An error occured while resolving packages – Unity Forum

packages errors – Stack Overflow

stuck on Unity 3D Package Manager Error when trying to open any Unity project – Stack Overflow

Package Manager | Unity Forum

Failed to import package with error: Couldn’t decompress package | Procedural Worlds Support

Failed to import package with error: Couldn’t decompress package – Stack Overflow

Can’t decompress package ! – Unity Forum

resource busy or locked エラー

現象:

リソースがロックされている旨のエラーが発生して、パッケージをインストールできない。

Cannot perform upm operation: EBUSY: resource busy or locked, open 'C:\XXX\...'

原因:

エディタなど他のアプリケーションでファイルがロックされている。

対処法:

  • 他のアプリケーションを閉じてから、Package Manager で再度インストールを実行する。

参考:

resource busy or locked がでてきて Package Manager がインストールできない – Qiita

EBUSY: resource busy or locked とでてパッケージがインポートできない | なつねこメモ

Resource blocked when installing Post Processing package? – Unity Forum

Project folder is read only エラー

プロジェクトフォルダに書き込めない旨のエラーが発生する。

Project folder is read only - Please move project somewhere readable and writable.

参考:

Having trouble with an error: Project folder or disk is read only. – Unity Forum

##utp type MemoryLeaks メッセージ

ログに ##utp: で始まるメッセージが記録される。

##utp:
{"type":"MemoryLeaks",...}

アプリケーションが完全に正常終了した場合に記録されるものらしい。

参考:

What is [“##utp:{“type”:”memoryleak”}”] ? – Unity Forum

Build crashes without logs to it or why it happened – Unity Forum

invalid subscript ‘uv2’ エラー

現象:

シェーダーをインポートすると uv2 が不正である旨のエラーが発生する。

invalid subscript 'uv2'

原因:

UNITY_PASS_META が適切に定義されていない為にエラーが発生する。

対処法:

エラーが発生したシェーダーを右クリックして再インポート (Reimport) を実行する。

参考:

引っ張ってきた Unity シェーダーが invalid subscript uv2 エラー | サークル獏の佐藤敏 Unity とか備忘録

Standard Shader Invalid Subscript uv2 error – reddit

シェーダーカーネルエラー

現象:

シェーダーカーネルが見つからない旨のエラーが発生する。

Did not find shader kernel 'frag_surf' to compile

対処法:

対象のシェーダーを右クリックして再インポート (Reimport) を実行する。

参考:

Did not find shader kernel – Unity Answers

Shader cannot find ‘frag_surf’ and ‘vert_surf’ and throws errors in the console and Inspector – Unity Issue Tracker

Unity 2019.x で com.unity.collab-proxy がエラーを起こす

プロジェクトロード時に com.unity.collab-proxy が複数のエラーを発生させる。

エラー例

error CS0117: 'Collab' does not contain a definition for 'ShowChangesWindow'

対処法:

Package Manager で Unity Collaborate を一旦削除して、Unity 2019 で動作するバージョンの Unity Collaborate をインストールし直す。

参考:

[Bug] Importing the project in Unity 2019.4 gives errors · Issue #591 · Unity-Technologies/arfoundation-samples – GitHub

obsolete エラー

現象:

Unity のバージョンアップに伴いクラスが除去されたため使用できない旨のエラーが発生する。

error CS0619: xxx is obsolete: 'xxx has been removed. Use xxx instead.'

対処法:

Use xxx instead. と表示されている場合は、エラーの発生したクラスの代わりに該当するクラスを使用する。

  • GUILayer → 使用できない。代わりに uGUI で UI を構築する。
  • GUITextUI.Text に置き換える。
  • GUITextureUI.Image に置き換える。

参考:

Unity のバージョンアップ時に GUIText の CS0619 エラーが大量発生 | Lab 7 in Singapore

GUI Text は非推奨になりました | TECH PROjin

error CS0619:’GUIText’ is obsolete:’GUIText has been removed. Use UI.Text instead.’ が出た時の対処法 | IT Learning

Standard Assets でエラーが出た時の対処方 (error CS0619) | いかけんの家

GUI レイヤー (旧) | Unity 2020.3 マニュアル [公式]

GUILayer.deprecated.cs at 2019.3 · Unity-Technologies/UnityCsReference – GitHub

Removing the GUILayer, GUIText & GUITexture components – Unity Forum

What should I replace “GUILayer” component with? – Stack Overflow

MinAttribute is an ambiguous reference エラー

現象:

MinAttribute が曖昧である旨のエラーが発生する。

error CS0104: 'MinAttribute' is an ambiguous reference between 'UnityEngine.PostProcessing.MinAttribute' and 'UnityEngine.MinAttribute'

対処法:

using 宣言を追加して、UnityEngine.PostProcessing.MinAttribute を使用する。

using MinAttribute = UnityEngine.PostProcessing.MinAttribute;Code language: C# (cs)

参考:

Post Processing Stack v1で MinAttribute のエラーが出るようになった時の対処 – Qiita

あいまいな参照とでる – teratail

DynamicMethod が見つからない

.NET Framework 2.0 では、動的メソッドではシンボル情報 (ローカル変数名と行番号マッピング) はサポートされていません。

── Microsoft Docs

現象:

DynamicMethod が見つからない旨のエラーが発生する。

error CS0246: The type or namespace name 'DynamicMethod' could not be found (are you missing a using directive or an assembly reference?)

対処法 1:

.NET Framework ランタイムのバージョン 4.x を使用する。

手順
  1. メニューから「Edit > Project Settings…」を開き、「Player」タブに切り替える。
  2. 「Other Settings > Configuration > Api Compatibility Level」の項目において、ドロップダウンリストから「.NET 4.x」を選択する。

対処法 2:

NuGet パッケージ「System.Reflection.Emit.Lightweight」を使用する。

手順
  1. System.Reflection.Emit.Lightweight」及び「System.Reflection.Emit.ILGeneration」のパッケージをダウンロードする。
  2. パッケージを解凍し、ランタイム実行ファイルの System.Reflection.Emit.Lightweight.dllSystem.Reflection.Emit.ILGeneration.dll を取り出して、プロジェクトフォルダの Assets/Plugins に配置する。

参考:

Unity で.NET 4.x を使用する | Microsoft Docs [公式]

DynamicMethod クラス – System.Reflection.Emit | Microsoft Docs [公式]

System.Reflection.Emit.Lightweight | NuGet Gallery [Official]

プラグイン | Unity マニュアル [公式]

特殊なフォルダー名 | Unity マニュアル [公式]

ライトマップベイク時にクラッシュする

現象:

ライトマップをベイクしている最中にクラッシュする。

原因:

  • メモリ (VRAM) が不足している。

対処法:

  • VRAM を使用する他のグラフィックソフトを終了させる。
  • 必要なオブジェクトにのみ Static を設定する。
  • 不要なライトを除外する。
  • シーンを分割する。

参考:

Editor crashes when calling Lightmapping.ClearLightingDataAsset() – Unity Forum

Unity Crash when Baking Lightmap – Unity Forum

Lightmap baking crashing Unity – Unity Forum

How to lightmap a very big scene without crashing? – Unity Answers

シェーダーキャッシュの異常でクラッシュする

対処法:

プロジェクト内の Library/ShaderCache フォルダーを削除して、プロジェクトを開き直す。

参考:

シェーダーアセット | Unity 2019.4 マニュアル [公式]

クラッシュ時に未保存のシーンを復元したい

プロジェクト内の Temp フォルダにある __EditModeSceneAssets フォルダ内にコピーして、.unity 拡張子を付けた名前 (RecoveredScene.unity など) に変更する。

参考:

エディタのクラッシュ時に失われたシーン情報を復旧させる裏ワザ | テラシュールブログ

Unity エディターがクラッシュ/強制終了した時にログから原因を見つける方法と、保存していないシーン情報の復旧方法 | kan のメモ帳

You can restore unsaved scene after Unity crash | The Knights of Unity

アセットが読み込めなくなる/テレインが壊れる

.asset 拡張子のファイルは基本的には YAML 形式のテキストであるが、次の種類のデータはバイナリで保存されるため、Git でテキストとして扱うと破損する。

  • Terrain
  • Lighting Data
  • NavMesh
  • TextMesh Pro
  • ProBuilder

対処法:

.gitattributes で拡張子が .asset のファイルをバイナリとして扱うように指定する。

*.asset binary

参考:

Unity’s TerrainData and .gitattributes | Adventures in Programming

Life with Unity + git + LFS: a rant and a call for help – reddit

Rename binary data asset file with a different file extension – Unity Forum

Terrain Data corrupted? Source control – Unity Forum

Help corrupt Terrain from Git – Unity Answers

Unknown error occurred while loading ‘Scene Name’ – Unity Forum

Terrain data is missing – Unity Answers

Failed to load LightingData.asset – Unity Forum

まとめ

Unity で初心者がハマりがちな罠とエラー対策 – Qiita

Unity でうまくいかないできない場合に確認すること | ゲームの作り方!

フォーラム

Unity Forum [Official]

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA