{!See https://docs.google.com/document/d/1takg_GmIBBKKTj-GHZCwzxohpQz7Bhekivkk72kYMtE/edit for reference implementation of OneTrust, dataLayer and GTM} {!OneTrust Cookies Consent} {!OneTrust Cookies Consent end} {!dataLayer initialization push} {!dataLayer initialization push end} {!Google Tag Manager} {!Google Tag Manager end} Dither 노드 | Shader Graph | 10.8.0
docs.unity3d.com
"{0}"의 검색 결과

    목차 표시/숨기기

    Dither 노드

    설명

    디더는 양자화 오류를 무작위화하는 데 사용되는 의도적 형태의 노이즈입니다. 이미지에서 컬러 밴딩과 같은 대규모 패턴을 방지하기 위해 사용합니다. Dither 노드는 화면 공간에 디더링을 적용하여 패턴의 균일한 분포를 보장합니다. 다른 노드를 Screen Position 입력에 연결하여 조정할 수 있습니다.

    이 노드는 일반적으로 마스터 노드의 Alpha Clip Threshold에 대한 입력으로 사용되어 불투명한 오브젝트에 투명 형상을 부여합니다. 이 노드는 투명하게 보이지만 불투명 렌더링의 이점을 누리는 오브젝트를 생성할 때 유용합니다(예: 뎁스 작성 및/또는 디퍼드 렌더링).

    포트

    이름 방향 Type 바인딩 설명
    In 입력 동적 벡터 None 입력 값
    Screen Position 입력 벡터 4 Screen Position 디더 패턴을 적용하는 데 사용되는 좌표
    Out 출력 동적 벡터 None 출력 값

    생성된 코드 예제

    다음 예제 코드는 이 노드의 가능한 결과 중 하나입니다.

    void Unity_Dither_float4(float4 In, float4 ScreenPosition, out float4 Out)
    {
        float2 uv = ScreenPosition.xy * _ScreenParams.xy;
        float DITHER_THRESHOLDS[16] =
        {
            1.0 / 17.0,  9.0 / 17.0,  3.0 / 17.0, 11.0 / 17.0,
            13.0 / 17.0,  5.0 / 17.0, 15.0 / 17.0,  7.0 / 17.0,
            4.0 / 17.0, 12.0 / 17.0,  2.0 / 17.0, 10.0 / 17.0,
            16.0 / 17.0,  8.0 / 17.0, 14.0 / 17.0,  6.0 / 17.0
        };
        uint index = (uint(uv.x) % 4) * 4 + uint(uv.y) % 4;
        Out = In - DITHER_THRESHOLDS[index];
    }
    
    문서 개요
    맨 위로
    Copyright © 2023 Unity Technologies — 상표 및 이용약관
    • 법률정보
    • 개인정보처리방침
    • 쿠키
    • 내 개인정보 판매 금지
    • Your Privacy Choices (Cookie Settings)