なにが壊れた?
さて、DOTweenを使っているとSafe Modeでこんな警告がよく出ますよね。
これはDOTweenの設定で「エラーが起きてもプレイを止めない」という設定にすると出るのですが、
この警告をダブルクリックした瞬間、Visual Studio Community 2019が壊れてしまいました。
「このプロジェクトはVisual Studio Tools for UNITY用に生成されたものではありません。」
エラー CS1929 'TextMeshProUGUI' に 'DOFade' の定義が含まれておらず、最も適している拡張メソッド オーバーロード 'ShortcutExtensions.DOFade(Material, float, float)' には 'Material' 型のレシーバーが必要です
エラー CS1929 'Image' に 'DOFade' の定義が含まれておらず、最も適している拡張メソッド オーバーロード 'ShortcutExtensions.DOFade(Material, float, float)' には 'Material' 型のレシーバーが必要です
まるで「using DG.Tweening;」を誤って消してしまったようなエラーですが、9行目にちゃんと書かれています。
どうやらVisual StudioがDOTweenのクラスを見つけられていない様子。
また、不思議なことにUNITY画面にはエラーが出ていません。
なにが壊れてしまったのでしょうか?
試したけどダメだったこと
DOTWeenのASMDEFファイルを生成してみる。
→直らず。
DOTweenを再インストールしてみる
念のため、事前にプロジェクトフォルダをコピーしてバックアップ、
Pluginsフォルダ内のDemigiantフォルダを削除して、Package ManagerからDOTween Proを再インストール。
→直らず。
DOTweenを完全に削除する
UNITYを落として、
C:\Users\(ユーザー名)\AppData\Roaming\Unity\Asset Store-5.x
内にある「Demigiant」フォルダを削除。
UNITYで再度Package Managerを開くと、DOTweenがImportからDownloadに変わっているので、ダウンロードしてImport。
→直らず。
UNITY側にもエラーが出るようになった。
あと、DOTweenのスタートアップパネルが表示されなくてDOTweenをセットアップできない。
UNITYのToolsのなかのDemigiantが消えてUtility Panelを表示できなくなってる。
→これはUNITYを再起動したら直った。UNITY側のエラーはこれで消えました。
でもVisual Studio Community 2019側のエラーは変わらず。
解決方法
Visual Studio Community 2019のソリューションデータを削除した
プロジェクトフォルダ内にあるslnファイルを削除してみたところ、きれいに直りました。
slnファイルが壊れてたのね。めでたしめでたし。
…1日潰れました。