unitypackageを開いたら被りがあって上書きされてしまう!
:勝手にGUIDが変わる 別にいい
:ファイル名が重複していて上書きされてしまう!
とにかくのマークをなんとかしないと、上書きされてしまう。
上書き後のファイルが他の部分で参照されてほしい場合
アセットをCtrl+Dで複製したあとにただImportする。
上書き前のファイルが他の部分で参照されてほしい場合
アセットの名前/パスを変更した後にImportする。
これらの処理を自動化するには、
- AssetPackageを事前に解析する方法
- ReflectionなどでUnityのImport時に出るウィンドウを解析する方法
などが考えられる。
↓考えすぎ***元のファイルのGUIDを変更する方法
非推奨
まずシーンを保存する。こうしないと恐らく「変更されました」通知が出た後、保存するとシーンに対して効果がなくなり、また保存しないとおじゃんになる。
1. Add package from git URL https://github.com/jeffjadulco/unity-guid-regenerator.git
2. 一旦unitypackageを開く
3. 警告⚠マークになっているところのhelpboxに競合先が書いてあるため、そのファイルすべてをRegenerate GUIDする。
思ったより待ち時間が必要(自分の場合は20分程度, Assetsフォルダは12GB, 約2万ファイル)で全く現実的でない。(ちなみにタスクマネージャのディスク使用率は大体3-5%だったので、ドライブの速度はあまり問題にはならなそう。)一気にregenerateしたほうが良い。
入れるファイルのGUIDを変更する方法
入れるunitypackage内でguidが完結しているはずだから、unitypackage(tar.gz)を解凍した後、guidを全部置換して、再度圧縮して、unitypackageとしてインポートする。スクリプトじゃないときつそう。
コピーする方法
1. 一旦unitypackageを開く
2. 警告⚠マークになっているところのhelpboxに競合先が書いてあるため、そのファイルすべてを複製する
3.手作業で修復する