Unityを使う場合の不具合です。
Unityの不具合
ログインできない?ダウンロードできない?
サーバ障害の可能性があります。
Unityではオフィシャルにサーバのステータスを公開していますので、まずはこちらを確認してみるとよいでしょう。
https://status.cloud.unity3d.com/
動作が重い?動かない?
Unityの動作要件は以下になります。
OS:
Windows 7 SP1+, 8, 10, 64 ビット版のみ;
Mac OS X 10.12+;
Ubuntu 16.04, 18.04, and CentOS 7.
GPU:
DX10(シェーダーモデル 4.0)の性能を持つグラフィックスカード。
ただし、オーサリング(プログラム作成時)には、たくさんのグラフィックデータ、3Dデータを読み込んで動かすことになるため、メモリはある程度装備しているうえ、ディスクもSSDで高速なアクセスができるほうがよいでしょう。
プロジェクトの起動が遅い場合は?
プロジェクトを複製する
プロジェクトファイルをそのまま複製することでバックアップできます。
ただプロジェクトファイルはサイズ大きいので注意。
プロジェクトファイルの容量削減
以下記事によればLibrary ディレクトリを削除可能のようです。
ただ起動時に再構成されるのでいったんロードは遅くなるようです。
[Unity] Libraryに含まれるCacheを削除してプロジェクト容量を削減する - JoyPlotドキュメント
プロジェクトの起動が遅い場合は?
不要なパッケージを削除しておく
たぶんですが、起動時には利用パッケージに更新があるかどうかとかもチェックしていてそれで遅くなる場合があるようです。
使わないものは削除しておきましょう。多くは後で再インストール可能だと思います。
コードエディタは自分が使わないものは不要なので削除して大丈夫でしょう。
キャッシュサーバーを有効にする
キャッシュは一度生成したデータを保存しておくことで、次回からはそれをロードするだけとなり起動が早くなる効果が期待できます。
「環境設定>AssetPipeline」では「Unity Accelerator(CacheServer)」でDefualtmodeを有効にします。
新規に適用する場合「initial assset database refresh unity」で結構時間がかかりましたが、次に起動するときは速い...ようです。(PCの再起動によってクリア?)
逆にキャッシュの破損などでロードがうまくいかない場合には「無効」にしてから起動してみましょう。
プラットフォームを指定して起動
起動時にプラットフォームを指定しておきます。
プラットフォーム返還のたびに画像変換が入ったりするようなのでそれをオフにする効果が期待できます。
死ぬほど重いUnityの起動を高速化する4つの方法 - 渋谷ほととぎす通信 (shibuya24.info)
パッケージエラー
パッケージを利用する場合のエラーメッセージです。
Unknown
原因不明のエラーです。
NotFound
パッケージやパッケージで必要なファイルが見つかりません。
Forbidden Operation
この操作は許可されていません。
InvalidParameter
パラメータが不正です。
Conflict
複数のバージョンが見つかっています。
エディタのエラー
設定が反映されない?
ゲーム実行中にインスペクタなどを変更しても反映はされません。
ゲームプレイを停止してから修正しましょう。
なお、ゲーム実行中かわかりやすいように色を変更しておくと、このミスが防げます。
Edit>Preferenceで「Colors>Playmode tint」の色を変更しておきましょう。
「スクリプトクラスが見つからないため」エラー?
「スクリプトクラスが見つからないため、スクリプトコンポーネント「〇〇」を追加できません。」というエラーです。
インスペクタでもスクリプトをアタッチしたゲームオブジェクトで「該当するスクリプトをロードできません」となります。
これはアセットのほうでスクリプト名を変更した場合におきました。
対策ですが、アセット上でスクリプト名を変更しても、スクリプト内のファイルでは元のクラス名がそのまま残ってしまい、名前が一致していないことにあります。
スクリプト内のクラス名も変更した名前に書きかえれば修正されます。
Project has invalid dependenciesエラー?
Unityをアンインストールして、せっかくなので新しいバージョンをインストールしました。
その後プロジェクトを開こうとすると、バージョンが古いためかエラーとなりました。
開くことはできましたが依存関係でエラーとなりました。
An error occurred while resolving packages: Project has invalid dependencies: com.unity.feature.development: Package [com.unity.feature.development@1.0.1] cannot be found
指定された「manifest.json」で指摘された箇所を削除して保存します。
これで治りました。
ただ全部がこれで治るかはわかりませんので、バックアップ取りながら試しましょう。
参考:Unity Package Manager Error: An error occured while resolving packages - Unity Forum
The type or namespace name 'EditorApplication' does not exist
ビルドで以下のようなエラーとなりました。
Assets\scrTimer.cs(44,12): error CS0234: The type or namespace name 'EditorApplication' does not exist in the namespace 'UnityEditor'
(are you missing an assembly reference?)
「EditorApplication」のネームスペースが存在しないというものです。
エラー場所やネット情報をみると、まずソースでエラーが起きていたのは
UnityEditor.EditorApplication.isPaused = true;
という場所です。
これはエラーの場合にシーンの再生を止めるものです。
組み込んだ理由としては、エラーがたくさん出る場合にエラーが出たラすぐ再生を止めたいためです。
アプリケーションをビルドすると、エディターで停止というのはそもそも不要となります。
この場合の対応としては
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPaused = true;
#endif
のようにユニティのエディタ上でのみスクリプトを有効とすればOKでした。
c# - The type or namespace name `UnityEditor' could not be found - Stack Overflow
NullReferenceException
スクリプトで参照先が見つからない場合のエラーです。
NullReferenceException: Object reference not set to an instance of an object
scrMain.Update () (at Assets/scrMain.cs:38)
たいていはスクリプトの行数が出ますので、そこで指定したオブジェクト等がみつからない・なくなっている場合のエラーです。
誤ってオブジェクトを削除している場合には、作り直すか、アンドゥで戻しておきます。
オブジェクトがシーン上にあっても、いったん非アクティブにしていると存在していないことになって参照できません。
この場合チェックを入れるか、スクリプトからSetActiveをtrueにしておきましょう。
Cannot import packages in play mode?
Cannot import packages in play mode?は、TMPなどのライブラリをロードしようとした際に出るエラー。
プレイモードではインポートできませんという意味のエラーです。
こちらの方は、実はプレイウィンドウが別モニタに表示されていたそうで、それをオフにしたら治ったとのこと。別モニタ表示をきづかせるサインが特にないため、わからなかったとのこと。
Resolved - Cannot import packages - Unity Forum