前回 DOTween アセットを Unity プロジェクトに追加する手順を紹介しました。
今回は Unity プロジェクトに追加してあるパッケージの削除方法を紹介します。
※通常のパッケージ削除の手順は、2章「パッケージの削除の手順」で完了しています。
その後は、import 直後にエラーが発生したためか、その手順が踏めない現象に対する試行錯誤が書かれているので、飛ばしても構いません。
※ Unity は 2021.3.14f1、OS は Windows 10 です。
LeanTween について
今回、削除するパッケージは LeanTween です。
実は DOTween を追加する前に同様の手順で LeanTween を追加したのですが、その直後に次のようなエラーが Console ウィンドウに表示されました。

LeanTween を Import 直後、Console にエラーメッセージが表示されました。
「Error while saving Prefab: ‘Assets/LeanTween/Examples/Prefabs/EndlessPiece.prefab’. You are trying to save a Prefab with a missing script. This is not allowed.
Please change the script or remove it from the GameObject ‘EndlessPiece’.」
そのエラーメッセージを頼りに検索すると以下のサイトが見つかりました。
“EndlessPiece” has missing script · Issue #163 · dentedpixel/LeanTween · GitHub
これによるとプロジェクトに紐づいた Visual Studio を起動してビルドすると直ったとありましたが、改善されませんでした。

Visual Studio の LeanTween を含むソリューション
結局、エラーの解決法が公式からアナウンスされていないようなので、あきらめました。
せっかくなので、その削除方法を具体的な例として使うことにします。
パッケージの削除
Unity プロジェクトに LeanTween を追加した際の [Package Manager] ウィンドウです。
※メニュー[Window]→[Package Manager]から表示できます。

Package Manager の LeanTween のページ
[Package Manager] ウィンドウの左上の [Packages:] のドロップダウンから In Projcet を選択します。

Package Manager ウィンドウで Packages を In Project に変更します。
あとは、削除したいパッケージ名をリストから選択して、詳細ビュー右下の [Remove] ボタンを押して削除完了です。
![Package Manager ウィンドウの Package: In Project で詳細ビューに表示される [Remove] ボタン](https://compota-soft.work/wp1/wp-content/uploads/2022/11/Package-Manager-ウィンドウの-Package:-In-Project-で詳細ビューに表示される-Remove-ボタン.png)
Package Manager ウィンドウの Package: In Project で詳細ビューに表示される [Remove] ボタン
しかし、今回はパッケージの Import 直後にエラーが発生したためか [Remove] ボタンどころか [Packages: In Project] のリストに LeanTween が表示されません。検索しても In project では見つかりません。

Packages: In Project のリストに LeanTween はありません
バグを我流で対策する
エラーが発生しないパッケージなら公式の説明の通り、前の章まででパッケージを削除できたと思います。
LeanTween に関しては、その手順通りにしてもリストに表示されなかったため、ここからは推論に基づく手順を記録します。
この章はあまり真剣に読まず、一人のユーザの試行錯誤と思ってください。
それでは、エラーメッセージにあったとおり、 EndlessPiece.prefab のコンポーネントから問題のスクリプトを除外します。
「Error while saving Prefab: ‘Assets/LeanTween/Examples/Prefabs/EndlessPiece.prefab‘. You are trying to save a Prefab with a missing script. This is not allowed.
Please change the script or remove it from the GameObject ‘EndlessPiece’.」
Project ウィンドウで Assets>LeanTween>Examples>Prefabs の EndlessPiece.prefab を選択すると、 Inspector ウィンドウに「問題を解決するためにこのプレハブを開いてください」とありました。

LeanTween の EndlessPiece プレハブを選択した際の Inspector ウィンドウ
そこで EndlessPiece.prefab をダブルクリックすると Hierarchy ウィンドウにそのプレハブの内部が表示されました。

Hierarchy ウィンドウの LeanTween の EndlessPiece
[Hierarchy] ウィンドウの EndlessPiece を選択すると、 Inspector ウィンドウに missing と書かれたスクリプト設定欄が表示されます。

LeanTween の EndlessPiece の Missing 箇所
下の AudioSource の AudioClip にも Missing がありますが、エラーが発生しているのは Script なのでそちらを None に変更します。

LeanTween EndlessPiece の Missing を None に変えた直後に表示されたダイアログ
Script コンポーネントに無効なスクリプトを割り当てることが問題なのかと思ったので Script コンポーネント自体を削除し、 Ctrl+S で保存しました。先ほどのダイアログは表示されません。

LeanTween EndlessPiece のScript のコンポーネント自体を除去
そして、 Unity エディタを再起動しました。
先ほどのエラーメッセージおよび警告は表示されません。
※これがこの章の唯一の成果かもしれません。
しかし、[Package Manager] ウィンドウの [Packages: In project] のリストには相変わらず LeanTween はありません。
import 直後にエラーが発生したので [Packages: In project] に入らなかったのでしょうか。
結局、エクスプローラから Assets/LeanTween フォルダと、 Assets.LeanTween.meta ファイルを削除しました。
※もしも LeanTween のように公式の手順で削除できなくなった場合は、削除するのではなくプロジェクトを作り直したほうが良いかもしれません。結局さっきの処置のあと私はそうしました。
コメント