[Deep Dive] Shader Graph 10.2.2 : 셰이더 그래프 시작하기 (Creating a new Shader Graph Asset )

Unity3D/Shader 2021. 10. 22. 21:45
반응형

셰이더 그래프는 스크립터블 렌더 파이프라인(SRP),

즉 고화질 렌더 파이프라인(HDRP) 및 범용 렌더 파이프라인(URP)과만 호환됩니다. 


이 두 SRP는 Unity 2018.1 이상에서 사용할 수 있습니다. 


레거시 내장 렌더 파이프라인은 셰이더 그래프를 지원하지 않습니다.

이제 셰이더 그래프가 HDRP 및 URP 패키지에 포함됩니다. 
SRP를 프로젝트에 추가하면 Unity가 자동으로 셰이더 그래프를 로드합니다.
SRP 설정에 대한 자세한 내용은 HDRP 시작하기 또는 URP 시작 하기를 참조하십시오 .

 

 

 

현재 에디터 버전 : 유니티 2020.3.21f1 

URP 버전 10.6.0 

공식문서 :

https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@10.6/manual/InstallingAndConfiguringURP.html

 

Getting started | Universal RP | 10.6.0

Getting started To use the Universal Render Pipeline (URP), you can start a new Project or upgrade an existing Project. You can do this in the following ways: Create a new URP Project from a Template. If you are starting a new Project from scratch, this is

docs.unity3d.com

 

 

 

유니버설 렌더 파이프라인 개요

URP(Universal Render Pipeline)는 Unity에서 만든 사전 빌드된 스크립터블 렌더 파이프라인입니다. 

https://docs.unity3d.com/kr/2021.2/Manual/ScriptableRenderPipeline.html

 

스크립터블 렌더 파이프라인 기초 - Unity 매뉴얼

Unity의 스크립터블 렌더 파이프라인(SRP)을 사용하면 C# 스크립트를 통해 렌더링을 제어할 수 있습니다. SRP는 유니버설 렌더 파이프라인(URP)과 고해상도 렌더 파이프라인(HDRP)의 기반 기술입니다.

docs.unity3d.com

URP는 모바일에서 고급 콘솔 및 PC에 이르기까지 다양한 플랫폼에서 최적화된 그래픽을 빠르고 쉽게 만들 수 있는 아티스트 친화적인 워크플로를 제공합니다.

 

 

 

Unity의 스크립터블 렌더 파이프라인(SRP)을 사용하면 C# 스크립트를 통해 렌더링을 제어할 수 있습니다. SRP는 유니버설 렌더 파이프라인(URP)과 고해상도 렌더 파이프라인(HDRP)의 기반 기술입니다.

 

c# 스크립트로 랜더링을 제어 할수 있구나...

 

https://docs.unity3d.com/kr/2021.2/Manual/scriptable-render-pipeline-introduction.html

 

스크립터블 렌더 파이프라인 소개 - Unity 매뉴얼

이 페이지는 Unity의 스크립터블 렌더 파이프라인(SRP)이 동작하는 방식을 설명하고 몇 가지 주요 개념 및 용어를 설명합니다. 이 페이지의 정보는 유니버설 렌더 파이프라인(URP), 고해상도 렌더

docs.unity3d.com

 

렌더 파이프라인 인스턴스(A Render Pipeline Instance.)

렌더 파이프라인의 기능을 정의하는 클래스의 인스턴스입니다.

해당 스크립트는 RenderPipeline에서 상속하고 Render() 메서드를 재정의합니다.

 

렌더 파이프라인 자산(A Render Pipeline Asset.)

사용할 렌더 파이프라인 인스턴스와 구성 방법에 대한 데이터를 저장하는 Unity 프로젝트의 에셋입니다.

해당 스크립트는 RenderPipelineAsset에서 상속하고 CreatePipeline() 메서드를 재정의합니다.

 

For more information on these elements, and instructions on how to create them in a custom render pipeline, 

see Creating a Render Pipeline Asset and a Render Pipeline Instance.

 

https://docs.unity3d.com/kr/2021.2/Manual/srp-creating-render-pipeline-asset-and-render-pipeline-instance.html

 

커스텀 렌더 파이프라인에서 렌더 파이프라인 에셋과 렌더 파이프라인 인스턴스 생성 - Unity 매

스크립터블 렌더 파이프라인(SRP)을 기반으로 자체 렌더 파이프라인을 생성하려는 경우 프로젝트에 다음이 포함되어 있어야 합니다.

docs.unity3d.com

커스텀 랜더 파이프라인 생성부터 봐야 할거 같아서 일단 상위로 이동 

 

Unity는 스크립터블 렌더 파이프라인(SRP)에 기반한 두 가지의 사전 빌드된 렌더 파이프라인, 즉 고해상도 렌더 파이프라인(HDRP)과 유니버설 렌더 파이프라인(URP)을 제공합니다. HDRP와 URP는 광범위한 커스터마이징 옵션을 제공합니다. 하지만 렌더링 파이프라인을 더욱 세세하게 제어하고 싶은 경우 SRP에 기반한 자체 커스텀 렌더 파이프라인을 생성할 수도 있습니다.

자체 커스텀 SRP를 생성하거나, 커스텀 버전의 URP 또는 HDRP를 생성하거나, SRP의 근본적인 작동 방식을 이해하고 싶다면 이 문서를 읽으십시오.

이 섹션은 다음의 페이지에 대해 다룹니다.

커스텀 렌더 파이프라인 시작
렌더 파이프라인 에셋과 렌더 파이프라인 인스턴스 생성
커스텀 렌더 파이프라인에서 단순한 렌더 루프 생성

 

 

음 아까 읽었던 내용이고, 커스텀 랜더 파이프라인 시작 클릭 

 

스크립터블 렌더 파이프라인을 기반으로 커스텀 렌더 파이프라인 생성
이 페이지에는 스크립터블 렌더 파이프라인(SRP)을 기반으로 커스텀 렌더 파이프라인을 생성하는 방법에 대한 설명이 나와 있습니다.

 

 

새로운 프로젝트 생성 및 커스텀 렌더 파이프라인에 필요한 패키지 설치
이 지침은 SRP 코어 패키지를 사용하여 커스텀 렌더 파이프라인을 생성하는 방법을 보여줍니다. SRP 코어는 Unity에서 제작한 패키지이며, 플랫폼별 그래픽스 API 작업을 위한 보일러플레이트 코드, 일반적인 렌더링 작업을 위한 유틸리티 함수, URP 및 HDRP에서 사용하는 셰이더 라이브러리 등을 포함하여 자체 렌더 파이프라인을 생성하는 데 도움이 되는 재사용 가능 코드가 들어 있습니다. SRP 코어에 대한 자세한 내용은 SRP 코어 패키지 문서를 참조하십시오.

https://docs.unity3d.com/Packages/com.unity.render-pipelines.core@11.0/manual/index.html

 

새 Unity 프로젝트를 생성합니다.


Git을 사용하여 SRP 소스 코드 저장소의 복제본을 생성합니다. 

https://github.com/Unity-Technologies/Graphics

 

용량이...

SRP 소스 코드는 예약된 프로젝트 하위 폴더를 제외하고 디스크의 모든 위치에 배치할 수 있습니다.

Git을 사용하여 SRP 소스 코드의 복사본을 Unity 에디터 버전과 호환되는 브랜치로 업데이트합니다. 

브랜치와 버전에 대한 자세한 내용은 SRP 저장소 문서의 최신 버전 사용을 참조하십시오.

Unity에서 프로젝트를 열고, 디스크의 SRP 소스 코드 폴더에서 다음 패키지를 다음 순서대로 설치합니다. 

디스크에서 패키지를 설치하는 방법은 로컬 폴더에서 패키지 설치를 참조하십시오.

 

쉐이더 그래프 공부하러 왔다가 커스텀 랜더링 파이프 만들고있네... 후 

 

일단 이거 후퇴하고 다시 그래프 보러 이동 

https://docs.unity3d.com/Packages/com.unity.shadergraph@11.0/manual/Create-Shader-Graph.html

 


Creating a new Shader Graph Asset 

SRP를 구성한 후 새 셰이더 그래프 자산을 생성할 수 있습니다. 프로젝트 창을 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 생성 > 셰이더  찾은 다음 원하는 유형의 셰이더 그래프를 선택합니다.

 

사용 가능한 셰이더 그래프 유형은 프로젝트에 있는 렌더 파이프라인에 따라 다릅니다. 일부 옵션은 렌더 파이프라인에 따라 있을 수도 있고 없을 수도 있습니다.

 

다음 옵션을 항상 사용할 수 있습니다.

 

설치된 각 렌더 파이프라인의 하위 메뉴에는 표준 셰이딩 모델(Lit, Unlit 등)에 대한 템플릿 스택이 포함되어 있을 수 있습니다.

 



제공된 옵션의 전체 목록은 유니버설 렌더 파이프라인 및 고화질 렌더 파이프라인 설명서를 참조하세요.

이 예에서는 Universal이 설치되어 Unversal Lit Shader Graph가 생성되었습니다.


새로 생성된 셰이더 그래프 애셋을 두 번 클릭하여 셰이더 그래프 창에서 엽니다

 

마우스 중앙 버튼으로 이동하고 드레그 해서 선택 할수도 있다 

마우스 휠로 줌인 줌 아웃도 가능 

 

 

The Shader Graph window consists of the 

Master Stack, 

the Preview Window, 

the Blackboard, and 

the Graph Inspector.

 

 

마스터 스택
셰이더 출력을 결정하는 최종 연결입니다. 
https://docs.unity3d.com/Packages/com.unity.shadergraph@11.0/manual/Create-Shader-Graph.html



 

Black Board

수집된 단일 보기에 모든 셰이더 속성이 포함된 영역입니다. 

Blackboard를 사용하여 속성을 추가, 제거, 이름 변경 및 재정렬합니다. 

https://docs.unity3d.com/Packages/com.unity.shadergraph@11.0/manual/Blackboard.html

 

 

 

 

Graph Inspector. (Internal Inspector)

내부 검사관 사용자가 현재 클릭하고 있는 것과 관련된 정보가 포함된 영역입니다. 

기본적으로 자동으로 숨겨지고 사용자가 편집할 수 있는 항목을 선택했을 때만 나타나는 창입니다.

내부 검사기를 사용하여 속성, 노드 옵션 및 그래프 설정을 표시하고 수정합니다.

https://docs.unity3d.com/Packages/com.unity.shadergraph@11.0/manual/Internal-Inspector.html

 

 

Preview Window, 

아무리 찾아도 안보인다면 그래픽 인스펙터를 위로 올려보면 보임 

현재 셰이더 출력을 미리 볼 영역입니다.

여기에서 개체를 회전하고 확대 및 축소할 수 있습니다.

셰이더를 미리 볼 기본 메시를 변경할 수도 있습니다. 

10.2에서는...

https://docs.unity3d.com/Packages/com.unity.shadergraph@13.1/manual/Main-Preview.html

일단 이걸로 대체 

 

기본 미리 보기는 활성 렌더 파이프라인의 셰이더 표현을 표시합니다. 

실시간으로 업데이트되고 자동으로 업데이트되어 셰이더 그래프에서 변경한 사항을 표시합니다. 

기본 미리 보기의 제목 표시줄에는 현재 셰이더의 이름이 표시됩니다.

 

 

 

일단 이렇게 인터페이스를 다 살펴 보았습니다

 

다음 포스팅은 '나의 첫 쉐이더 그래프'

https://docs.unity3d.com/Packages/com.unity.shadergraph@10.2/manual/First-Shader-Graph.html

 

반응형
: