{!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} 셰이더 그래프 10.0.x 버전으로 업그레이드 | Shader Graph | 10.8.0
docs.unity3d.com
"{0}"의 검색 결과

    목차 표시/숨기기

    셰이더 그래프 10.0.x 버전으로 업그레이드

    Vector 1 프로퍼티 및 Float 정밀도의 이름을 변경함

    셰이더 그래프는 Vector 1 노드와 노출된 파라미터 리스트 모두에서 Vector 1 프로퍼티의 이름을 Float로 변경했습니다. 또한 Float 정밀도의 이름도 Single로 변경했습니다. 동작은 완전히 동일하며, 단지 이름만 변경되었습니다.

    Sample Cubemap 노드의 이름을 변경함

    셰이더 그래프는 이전의 Sample Cubemap 노드를 Sample Reflected Cubemap 노드로 이름을 변경하고, 월드 공간 방향을 사용하는 새로운 Sample Cubemap 노드를 추가했습니다.

    마스터 스택 그래프 출력

    셰이더 그래프는 마스터 노드를 제거하고, 10.0 버전에서 그래프 출력을 정의하기 위한 보다 유연한 마스터 스택 솔루션을 도입했습니다. 셰이더 그래프가 자동으로 업그레이드하므로, 이전 버전에서 생성된 모든 그래프를 계속 열 수 있습니다. 이 페이지에서는 예상되는 동작을 설명하고 수동 업그레이드 단계를 수행해야 하는 경우에 대해 설명합니다.

    마스터 노드에서 자동 업그레이드

    하나의 마스터 노드를 마스터 스택으로 업그레이드

    그래프에 마스터 노드가 하나만 있는 경우 셰이더 그래프는 이 섹션에 설명된 대로 해당 마스터 노드의 모든 데이터를 마스터 스택 출력으로 자동으로 업그레이드합니다.

    셰이더 그래프는 그래프 인스펙터의 Graph Settings 탭에 올바른 타겟을 자동으로 추가합니다. 또한 마스터 노드의 표면 옵션을 설명하는 마스터 노드 설정 메뉴(기어 아이콘)의 모든 설정을 타겟 설정으로 복사합니다.

    그런 다음 셰이더 그래프는 마스터 노드의 각 포트에 대한 Block 노드를 마스터 스택에 추가합니다. 마스터 노드 포트에 연결한 모든 노드가 해당 Block 노드에 연결됩니다. 또한 셰이더 그래프는 마스터 노드 포트의 기본값 입력에 입력한 모든 값을 해당 Block 노드에 복사합니다.

    이 업그레이드 프로세스 후 최종 셰이더의 형상은 동일합니다.

    여러 개의 마스터 노드를 마스터 스택으로 업그레이드

    그래프에 두 개 이상의 마스터 노드가 있는 경우 셰이더 그래프는 하나의 마스터 노드를 현재 선택된 활성 마스터 노드로 자동 업그레이드하기 위해 위의 프로세스를 적용합니다.

    마스터 스택 포맷으로 업그레이드하면 셰이더 그래프가 그래프에서 비활성 마스터 노드를 제거하므로, 이 데이터가 손실될 수 있습니다. 여러 개의 마스터 노드가 있는 그래프를 업그레이드하려는 경우 비활성 마스터 노드의 설정 메뉴(기어 아이콘)에서 포트, 연결된 노드 그리고 기본이 아닌 설정에 대한 기록을 유지하는 것이 가장 좋습니다.

    업그레이드 이후 누락된 필수 Block 노드를 추가하고 노드를 마스터 스택에 다시 연결할 수 있습니다. 또한 Graph Inspector > Graph Settings 탭의 설정 메뉴(기어 아이콘)로 이동하여 해당 타겟 설정에서 비활성 마스터 노드에 대한 설정을 수동으로 입력해야 합니다.

    크로스 파이프라인 마스터 노드를 마스터 스택으로 업그레이드

    유니버설 렌더 파이프라인(URP) 및 고해상도 렌더 파이프라인(HDRP) 둘 다와 호환되는 PBR 또는 Unlit 마스터 노드가 그래프에 있는 경우 셰이더 그래프는 프로젝트에서 현재 사용할 수 있는 렌더 파이프라인을 기반으로 자동으로 마스터 스택으로 업그레이드합니다. 마스터 스택을 사용하면 한 렌더 파이프라인에서 다른 렌더 파이프라인으로 전환하는 경우 셰이더 그래프 에셋을 다시 임포트하여 프로젝트의 모든 머티리얼에 대한 머티리얼 인스펙터를 업데이트해야 합니다.

    이제 URP의 URP Lit Target에서 모든 PBR 마스터 노드 설정을 찾을 수 있습니다. Unlit 마스터 노드 설정은 URP Unlit Target에 있습니다. 이러한 설정은 동일하며, 최종 셰이더는 업그레이드 전과 동일하게 표시되어야 합니다.

    HDRP에서 PBR 및 Unlit 마스터 노드의 설정은 HDRP Lit 및 Unlit Target과 동일하지 않습니다. 따라서 PBR 또는 Unlit 마스터 노드를 HDRP Lit 및 Unlit 마스터 스택으로 업그레이드할 때 예기치 않은 동작이 발생할 수 있습니다. 최종 셰이더는 업그레이드 전과 동일하게 표시되지 않을 수 있습니다. 그러한 경우 버그 리포터를 사용하여 업그레이드 문제를 제출할 수 있지만, 일부 업그레이드 경로에는 즉각적인 자동화 솔루션이 없으며 수동 조정이 필요할 수 있습니다.

    "View Generated Shader"가 이동함

    이전에는 마스터 노드를 마우스 오른쪽 버튼으로 클릭하여 컨텍스트 메뉴를 불러오고 View Generated Shader를 선택하여 생성된 셰이더를 미리볼 수 있었습니다. 10.0 버전에서는 Unity 인스펙터를 사용해야 하며, 셰이더 그래프 에셋에서 View Generated Shader 버튼을 클릭해야 합니다.

    이미지

    그래프 인스펙터의 설정

    셰이더 그래프는 10.0 버전에서 내부 그래프 인스펙터를 도입했습니다. 그래프 인스펙터는 그래프에서 선택한 오브젝트와 관련된 설정을 표시하는 부동 창입니다.

    그래프 설정

    이제 그래프 전체 설정을 그래프 인스펙터의 Graph Settings 탭에서만 사용할 수 있습니다. 특히, Graph Settings 탭으로 이동하여 Precision 토글에 액세스할 수 있습니다. 이전에 이 토글은 셰이더 그래프 툴바에 있었습니다. 데이터에는 변경 사항이 없으며, 그래프의 Precision 설정과 같은 요소도 그대로 유지됩니다.

    Graph Settings 탭에서 각 타겟에 대한 표면 옵션을 설명하는 설정도 찾을 수 있습니다. 이 설정은 이전에 마스터 노드 톱니바퀴 메뉴에 있었습니다. 셰이더 그래프가 이 데이터를 자동으로 업그레이드하는 방법에 대한 자세한 내용은 위의 마스터 노드에서 자동 업그레이드를 참조하십시오.

    프로퍼티 설정

    이전에 블랙보드 폴드아웃에 있던 프로퍼티 설정을 그래프 인스펙터에서 사용할 수 있습니다. 이제 블랙보드에서 여러 프로퍼티를 선택하고 동시에 편집할 수 있습니다. 데이터에는 변경 사항이 없으며, 그래프의 프로퍼티에 대한 모든 설정도 그대로 유지됩니다.

    노드별 설정

    이전에는 설정(기어 아이콘) 하위 메뉴를 열어 관리하던 모든 노드별 설정을 그래프 인스펙터를 통해 액세스할 수 있습니다. 데이터에는 변경 사항이 없으며, 정밀도 설정 및 Custom Function 노드 설정과 같이 이전에 노드에 대해 지정한 모든 설정도 그대로 유지됩니다.

    이제 표면 옵션을 정의하는 마스터 노드의 모든 설정이 그래프 인스펙터의 Graph Settings 탭에 있습니다. 자세한 내용은 위의 마스터 노드에서 자동 업그레이드를 참조하십시오.

    Custom Function 노드 및 셰이더 그래프 미리보기

    Custom Function 노드에 대한 미리보기 셰이더 컴파일에서 오류를 피하려면 그래프 내 미리보기 렌더링에 대해 키워드를 사용해야 할 수 있습니다.

    #if SHADERGRAPH_PREVIEW를 사용하는 커스텀 셰이더 그래프 미리보기 코드가 포함된 Custom Function 노드가 있는 경우 다음과 같이 #ifdef 선언으로 업그레이드해야 합니다.

    # ifdef SHADERGRAPH_PREVIEW
    	Out = 1;
    # else
    	Out = MainLight;
    # endif
    

    지원이 중단된 노드 및 프로퍼티 동작

    이전에는 Color 노드와 같은 일부 노드 및 프로퍼티가 의도한 대로 작동하지 않았지만, 이제는 셰이더 그래프 10.0 버전에서 올바르게 작동합니다. 잘못된 동작에 의존하는 예전 그래프는 여전히 예전과 동일하게 작동하며, 지원이 중단된 노드 및 프로퍼티를 개별적으로 업그레이드하도록 선택할 수 있습니다. 셰이더 그래프 환경 설정에서 Allow Deprecated Behaviors를 활성화하지 않으면 새로 생성된 노드와 프로퍼티가 최신 버전의 노드와 프로퍼티 동작을 사용합니다.

    지원이 중단된 노드의 경우 기본 그래프 뷰에서 노드 제목 뒤에 **(Deprecated)**가 나타납니다.

    이미지

    지원이 중단된 프로퍼티의 경우 블랙보드에서 프로퍼티 이름 뒤에 **(Deprecated)**가 나타납니다.

    이미지

    지원이 중단된 노드 또는 프로퍼티를 선택하면 선택 항목을 업그레이드할 수 있는 Update 버튼과 함께 내부 인스펙터에 경고가 나타납니다. 실행 취소/재실행 기능을 사용하여 이 업그레이드 프로세스를 되돌릴 수 있습니다.

    이미지

    셰이더 그래프 환경 설정에서 Allow Deprecated Behaviors를 활성화하면 셰이더 그래프는 지원이 중단된 노드 또는 프로퍼티의 버전을 표시하며, Update 버튼이 나타나도 경고를 표시하지 않습니다. 블랙보드 또는 검색창을 사용하여 지원이 중단된 노드 및 프로퍼티를 생성할 수도 있습니다.

    문서 개요
    맨 위로
    Copyright © 2023 Unity Technologies — 상표 및 이용약관
    • 법률정보
    • 개인정보처리방침
    • 쿠키
    • 내 개인정보 판매 금지
    • Your Privacy Choices (Cookie Settings)