コードインスペクション:同じ名前のシェーダーが複数見つかりました
このインスペクションは、同じ名前を持つ複数の ShaderLab シェーダーに解決されるシェーダー名文字列を報告します。
Unity では、 Shader.Find("Name") などのシェーダー参照は単一のシェーダーを指すことが想定されています。 複数のシェーダーが同じ名前を共有している場合、参照は曖昧になり、コードがどのシェーダーを使用しようとしているのかが不明確になります。
サンプル
using UnityEngine;
public class Example : MonoBehaviour
{
void Start()
{
var shader = Shader.Find("Custom/MyShader");
}
}
using UnityEngine;
public class Example : MonoBehaviour
{
void Start()
{
var shader = Shader.Find("Custom/MyUniqueShader");
}
}
修正方法
専用の即効性のある解決策はありません。 一般的な解決策は、重複するシェーダーの名前を変更するか削除して、参照が正確に 1 つのシェーダーに解決されるようにすることです。
2026 年 6 月 12 日