Unity가 일반 셰이더로 오브젝트를 렌더링할 수 없는 경우도 있습니다. 이 경우 Unity는 특수 셰이더로 오브젝트를 렌더링합니다.
Unity가 사용하는 특수 셰이더는 Unity가 원래 셰이더를 사용할 수 없는 이유에 따라 다릅니다.
Unity는 오브젝트의 머티리얼이나 셰이더에 문제가 있을 때 기본 오류 셰이더를 사용하여 오브젝트를 렌더링합니다. 예를 들어 머티리얼이 할당되지 않았거나 셰이더가 컴파일되지 않았거나 셰이더가 지원되지 않는 경우입니다.
Unity는 Unity 에디터와 빌드에 기본 오류 셰이더를 사용합니다.
기본 오류 셰이더는 자홍색(밝은 분홍색)입니다.
BatchRendererGroup API를 사용할 때 Unity는 기본 오류 셰이더를 표시하지 않습니다. 대신 사용할 머티리얼을 설정하려면 BatchRendererGroup.SetErrorMaterial을 사용합니다.
프로젝트가 URP(유니버설 렌더 파이프라인)를 사용하면, Unity는 오브젝트가 빌트인 렌더 파이프라인의 셰이더를 사용하는 경우 기본 오류 셰이더를 사용하여 오브젝트를 렌더링할 수 있습니다. 자세한 내용은 셰이더 전환을 참고하십시오.
Unity는 로딩 셰이더로 오브젝트를 렌더링하여 해당 오브젝트를 표시하는 데 필요한 셰이더 배리언트를 컴파일하고 있음을 나타냅니다.
Unity는 비동기 셰이더 컴파일이 활성화된 경우 Unity 에디터에서 로딩 셰이더를 표시하거나, Shader Live Link 지원이 활성화된 경우 개발 빌드에서 로딩 셰이더를 표시합니다.
로딩 셰이더는 청록색(밝은 파란색)입니다.
BatchRendererGroup API를 사용할 때 Unity는 로딩 셰이더를 표시하지 않습니다. 대신 사용할 머티리얼을 설정하려면 BatchRendererGroup.SetLoadingMaterial을 사용합니다.
프로젝트에서 SVT(스트리밍 가상 텍스처링)을 사용하는 경우 Unity는 특수 머티리얼을 사용하여 SVT 설정의 문제를 나타냅니다. 자세한 내용은 가상 텍스처링 오류 자료를 참조하십시오.