はじめに
何の前触れもなく次のようなエラーが出ることがありました。
MonoScript is registered as both Editor and Runtime script!
このようなエラーが何故起こるのか、そしてどういう意味があるのかを調べてみたところ、Unity Forumで言及されていたので、その内容を和訳してメモしておきたいと考え、この記事を書きました。
エラーの原因
- Unityの内部では、どのスクリプトがエディタスクリプトで、どのスクリプトがランタイムスクリプトであるかを記憶するキャッシュがある
- 同じスクリプトがランタイムキャッシュとエディタキャッシュの両方に存在するせいで起こるバグがある。(このバグはエディタとランタイムアセンブリ間でスクリプトを移動する際に発生する)
- そのバグが起こるのはどのようなケースかを調べるためにこのエラーが存在する
解決法
エディタを再起動する。(エディタを再起動するとキャッシュが再構築されるため)