【無料】全自動GUID書き換えツール(Unity)【BOOTH購入&販売支援スクリプト】
- Digital0 JPY



■このスクリプトの概要 Unitypackageのファイル・フォルダ重複問題を一発解決。購入者側でも使えます! BOOTHでVRChat向け商品などを複数個販売している時によく発生するインポートの問題を本ツールで解決します。 ■GUID問題について 例えば、以前の販売データから使い回したファイル等が過去の違うフォルダにインポートされちゃう…。もしくは重複判定で上書きされてしまう…。(同じGUIDで処理されているから) こういったUnitypackageを販売する上でのあるあるを解決します。 ■このスクリプトでやっていること その1:指定したフォルダ内のGUIDを書き換えます。(.metaファイル内のGUIDを書き換え) その2:シーン、プレハブ、マテリアル等のデータ内に”直接記述”されているGUID参照を書き換えます。 その3:フォルダ内の全てのデータを検索して、旧GUIDを見つけたら新GUIDに参照等を差し替えます。 ■使い方 ①同梱されているGUIDReplacer.CSをAssets/EditorフォルダにD&D(フォルダがない場合は同じ名称で作ってください) ②上のメニューバーに”Tools”が追加されるので、その中のGUID Replacerをクリック。 ③書き換えたいフォルダを選択した上で「選択中のフォルダを設定」をクリック→「GUIDを完全に書き換える」をクリック ■このスクリプトでできないこと ◯CSファイル(UdonSharp含む)関連のGUID書き換えは除外しています(CSスクリプトの中身が同じプロジェクト内で重複するのはマズイので…) ◯ベイクデータ関連(LightingData.asset .Lightmap ReflectionProbe等)の書き換えも除外しています。(バイナリの直接書き換えが困難なので…) →事前にサンプルシーンを新しく作り(もしくはSave Scene As)ライトマップベイクを新規で実行していればそもそもの重複は避けられます。 ■このスクリプトを作った経緯 UnityのGUID書き換えツール自体は過去にも個人サイト等で公開されていた(と思う)のですが… ファイル自体のGUID参照までは書き換えしていなかった&全ての.metaを書き換えていたので スクリプト関連があるとエラーが出る、またサンプルシーンがあるとGUID参照が外れているので読み込めない等の問題があったので 仕組みを一から設計し直してみました。 (基礎の発想 アイデアをお借りしましたので、この場を借りて御礼申し上げます) ■使う上での注意事項 ◯.metaファイル以外のMaterialやPrefab、Sceneファイルの中身まで書き換え処理します! 書き換え範囲がかなり広いので”必ずバックアップを取ってください”※自動でバックアップデータが作成されたりすることはありません。 プログラム内でも強めに警告を入れていますが、書き換え後は元に戻せないので注意してください。 ◯本来のGUIDの役割通り、アップデートパッチ等でファイルを上書きしたい場合や、重複ファイルを無くして一本化したい場合は本ツールを実行しないでください。このツールはあくまでパッケージ毎にフォルダ分け等を完全に分離したい場合や、望まない上書きを避けるためのツールです。 ■動作確認済みの環境 Unity 2022.3.22f1(VRC&URP) ※構造的には別のバージョンやVRC環境以外でも動作する…はず。 ■BOOTHのデータ購入者向け 購入したデータでの応用編 買ったデータのUnitypackageのインポートタイミングで、めちゃくちゃ▲の警告表示がでたり過去のフォルダ内データと重複してしまった場合…。 一旦新規プロジェクトを作成して該当するデータをインポート→本ツールを実行→エクスポートすれば重複が発生しないUnitypackageを作ることができます。 ■価格について 無料です。有料にできるほどサポート等もできないので…。多少でもBOOTHやUnityのコンテンツ市場が便利に、賑やかになれば幸いです。 ■利用に関しての詳細 個人法人問わず商用利用可能。報告不要。クレジット表記も不要です。 但し、再配布や販売は改変の有無を問わず不可とします。(データが壊れても保証できないので…) データの直接配布は避けてここのURLを載せるようにしてください。 ※本スクリプトを使用して発生した、いかなる損害・損失・その他不利益等には、当方は一切の責任を負いません。 追記:過去の私の販売モデルもちょくちょくファイル等が重複しているので…順次このツールで差し替えアップロードしてます。申し訳ない…!



