Fix Missing Shader On Prefab (プレハブの消失シェーダー修正)
メニューパス: プレハブアセットを右クリック > Fix Missing Shaders (Prefab → Standard)
プレハブアセット内の「ピンク色」の壊れたマテリアルを修正するための専用クリーンアップツールです。これは通常、異なる Unity バージョンやレンダーパイプラインからアセットをインポートした際のシェーダーの欠落やエラーによって発生します。
主な機能
- 安全な編集: Unity の
PrefabUtility.EditPrefabContentsScopeを使用して、シーンにインスタンス化することなくプレハブを直接修正します。 - 検出:
nullシェーダーや、「InternalError」としてマークされたシェーダー(ピンク色のメッシュの一般的な原因)を持つマテリアルを特定します。 - 自動置換: 壊れたシェーダーをデフォルトの Unity Standard シェーダーに置き換えます。
- 再帰的スキャン: プレハブ内のすべての子 Renderer と、その中のすべてのマテリアルスロットを深くスキャンします。
使い方
- Project ウィンドウで、「ピンク色」または壊れているプレハブを見つけます。
- プレハブアセットを右クリックします。
- Fix Missing Shaders (Prefab → Standard) を選択します。
- どのマテリアルが修正されたかがコンソールに記録されます。
[!NOTE] このツールは、Hierarchy 内の GameObject インスタンスではなく、Project ビュー内の プレハブアセット に対して動作するように特別に設計されています。