Version: 2020.3
언어: 한국어
ShaderLab 커맨드: ZTest
ShaderLab 레거시 기능

ShaderLab 커맨드: ZWrite

렌더링 중 뎁스 버퍼 콘텐츠의 업데이트 여부를 설정합니다. 일반적으로 ZWrite는 불투명한 오브젝트에 대해 활성화하며, 반투명한 오브젝트에 대해서는 비활성화합니다.

ZWrite를 비활성화하면 뎁스 순서 지정이 잘못될 수 있습니다. 이 경우에는 CPU에서 지오메트리를 정렬해야 합니다.

렌더 파이프라인 호환성

기능 이름 빌트인 렌더 파이프라인 유니버설 렌더 파이프라인(URP) 고해상도 렌더 파이프라인(HDRP) 커스텀 SRP
ZWrite 지원 지원 지원 지원

사용법

이 커맨드는 렌더 상태를 변경합니다. Pass 블록에서 사용하여 해당 패스의 렌더 상태를 설정하거나, SubShader 블록에서 사용하여 해당 서브셰이더에 있는 모든 패스의 렌더 상태를 설정할 수 있습니다.

서명 예제 구문 기능
ZWrite [state] ZWrite Off 뎁스 버퍼에 작성을 활성화하거나 비활성화합니다.

유효한 파라미터 값

파라미터 기능
상태 On 뎁스 버퍼에 작성을 활성화합니다.
Off 뎁스 버퍼에 작성을 비활성화합니다.

예제

이 예제 코드는 Pass 블록에서 이 커맨드를 사용하기 위한 구문을 나타냅니다.

Shader "Examples/CommandExample"
{
    SubShader
    {
         // The rest of the code that defines the SubShader goes here.

        Pass
        {    
              // Disables writing to the depth buffer for this Pass
              ZWrite Off
            
              // The rest of the code that defines the Pass goes here.
        }
    }
}

이 예제 코드는 SubShader 블록에서 이 커맨드를 사용하기 위한 구문을 나타냅니다.

Shader "Examples/CommandExample"
{
    SubShader
    {
         // Disables writing to the depth buffer for this SubShader
         ZWrite Off

         // The rest of the code that defines the SubShader goes here.        

        Pass
        {    
              // The rest of the code that defines the Pass goes here.
        }
    }
}
ShaderLab 커맨드: ZTest
ShaderLab 레거시 기능