この記事でのバージョン
Unity 2019.4.14f1
はじめに
今回はタイトル通り、Unityエディターがクラッシュ(強制終了)した時に
ログから原因を見つける方法と、保存していないシーン情報の復旧方法の解説記事です!
ログを見て原因を見つける方法
まずログを見て原因を見つける方法ですが、
UnityエディタのログはEditor.logという物に保存されており、以下の場所にあります。
オペレーティングシステム Log files Linux ~/.config/unity3d/Editor.log macOS ~/Library/Logs/Unity/Editor.log Windows C:\Users\username\AppData\Local\Unity\Editor\Editor.log
なのでUnityエディターがクラッシュしたら、
このEditor.logをすぐに開くとクラッシュした所のログまで見る事が可能です。
なお、Console同様上から下にログが追加されている感じで、
下の方の「Launching bug reporter」とある辺りがクラッシュした付近です。
ちなみに上記の例の時は、SteamAPI_ISteamUserStats_SetStatとある通り、
エディタ終了後にSteamにスコア送信をしようとしていたのが原因でした。
保存していないシーン情報の復旧方法
次に保存していないシーン情報の復旧方法ですが、保存していないシーン情報は
プロジェクトのAssetsと同じ階層にある(Unityからは見えない)Temp内の__Backupscenesに入ってます。
これをUnityエディターがクラッシュしたらすぐにデスクトップ等、別の場所にコピーします。
(Unityを再起動してしまうと消えてしまうので)
あとはUnityエディタを再起動して、移動していた__Backupscenesを元あった場所に上書きするか、
フォルダ内にある0.backup(中身はシーンファイル)等のファイルを
0.Unityとリネームしてプロジェクトに追加すれば復旧する事が出来ます。
参考