メインコンテンツまでスキップ

Fix Missing Shader On Prefab (プレハブの消失シェーダー修正)

メニューパス: プレハブアセットを右クリック > Fix Missing Shaders (Prefab → Standard)

プレハブアセット内の「ピンク色」の壊れたマテリアルを修正するための専用クリーンアップツールです。これは通常、異なる Unity バージョンやレンダーパイプラインからアセットをインポートした際のシェーダーの欠落やエラーによって発生します。

主な機能

  • 安全な編集: Unity の PrefabUtility.EditPrefabContentsScope を使用して、シーンにインスタンス化することなくプレハブを直接修正します。
  • 検出: null シェーダーや、「InternalError」としてマークされたシェーダー(ピンク色のメッシュの一般的な原因)を持つマテリアルを特定します。
  • 自動置換: 壊れたシェーダーをデフォルトの Unity Standard シェーダーに置き換えます。
  • 再帰的スキャン: プレハブ内のすべての子 Renderer と、その中のすべてのマテリアルスロットを深くスキャンします。

使い方

  1. Project ウィンドウで、「ピンク色」または壊れているプレハブを見つけます。
  2. プレハブアセットを右クリックします。
  3. Fix Missing Shaders (Prefab → Standard) を選択します。
  4. どのマテリアルが修正されたかがコンソールに記録されます。

[!NOTE] このツールは、Hierarchy 内の GameObject インスタンスではなく、Project ビュー内の プレハブアセット に対して動作するように特別に設計されています。