샘플을 다운받으면 여러가지의 서브 그래프를 다운받을 수 있습니다.이때 주의하실 점은 쉐이더 그래프 버전에 따라 제공되는 샘플의 종류가 다르므로 본인의 쉐이더 그래프의 버전을 확인하시길 바랍니다. Procedural Patterns Procedural Patterns 예제에는 다양한 패턴들의 소개가 나와있습니다. Node Reference Node Reference 예제에는 각 노드에 대한 설명이 나와있습니다.쉐이더 그래프를 처음 다룰 때 참고하시면 매우 좋을 것 같습니다! Feature Examples Feature Examples 예제에는 실제로 사용할수 있는 쉐이더 기법에 대한 설명이 나와있습니다.본인이 만들고자 하는 쉐이더가 있다면 참고하시면 좋을 것 같습니다.
쉐이더 그래프를 이용해서 작업을 하다보면 Black Board에 프로퍼티 값들이 많아져서 본인이 원하는 값을 찾기가 어려워집니다. 아래 예시와 같이 말이죠. 그럴때 사용할 수 있는 게 카테고리 기능입니다.카테고리 기능을 이용해서 비슷한 프로퍼티들 끼리 묶어주면 나중에 해당 값을 찾을 때 더 쉽게 찾을 수 있습니다. 카테고리 만드는 방법은 [+]를 누른 후 Category를 선택하시면 됩니다. 그 후 카테고리를 더블클릭해서 이름을 바꿔줄 수 있습니다.
Step Node란? Step Node는 입력값 In이 Edge 값보다 크거나 같으면 1을 반환하고, 그렇지 않으면 0을 반환합니다.예를 들어, 특정 임계값을 기준으로 텍스처의 특정 부분을 강조하거나 숨기는 데 사용할 수 있습니다. 위 사진은 Step Node가 사용하는 함수입니다.두 개의 Value를 비교해서 Branch Node를 통해 1 or 0을 반환합니다.이때 기준은 A가 되며 A가 B보다 크거나 같은 경우에만 1, 그 외에는 0입니다. 프로그래머가 한 번에 이해하는 방법=> 입력 값 In(A) > Edge(B) ? 1: 0 대박슨ㅋㅋㅋㅋ
Saturate Node란? "Saturate Node"는 Shader Graph에서 사용되는 노드로, 입력 값을 0과 1 사이로 고정시키는 역할을 합니다. 어떤 값을 받아도 그 값이 0보다 작으면 0으로, 1보다 크면 1로 만드는 역할을 합니다. 입력 값의 범위를 제한하여 처리한다고 생각하시면 됩니다. Clamp Node와 차이는? 🔽 더보기 Clamp Node는 사용자가 지정한 최소값과 최대값 사이로 입력 값을 제한합니다. 예를 들어, 입력 값을 -1과 1 사이로 제한하거나, 10과 100 사이로 제한하는 것이 가능합니다.
Smoothstep Node란? Smooth Step Node는 특정 입력 값이 두 경계(Edge1, Edge2) 값 사이에 있을 때 0과 1 사이의 'Hermite 보간 결과'를 반환합니다. 'Smooth Step Node'는 'Lerp Node'와 비슷하지만 두 가지 차이점이 있습니다. Smooth Step Node를 사용하여 범위 (Edge1, Edge2) 를 지정하고, 0과 1 사이의 반환 값을 돌려 받습니다. Smooth Step Node는 'Linear 보간' 대신 'Hermite 보간'을 사용합니다. 보간이 처음에는 점진적으로 빨라졌다가 끝으로 갈수록 점차 느려집니다. 'Linear 보간'과 'Hermite 보간' 차이는? 🔽 더보기 Linear 보간법은 두 점 사이를 직선으로 연결하여 그 ..
Shader Graph의 Noise Node는 Simple Noise와 Gradient Noise 두 가지 유형이 있습니다. Simple Noise란? Simple Noise는 UV 입력을 기반으로 단순하거나 'Value Noise'를 생성합니다. Value Noise란? 🔽 더보기 Value Noise란 컴퓨터 그래픽에서 절차적(Procedual) Texture 생성에 사용되는 Noise Type입니다.Value Noise는 각 Grid Point에서 무작위 값을 생성하고, 이 값들 사이를 보간하여 Noise를 생성해냅니다. 보간하기에 부드러운 결과를 생성해냅니다. Value Noise는 자연스러운 텍스처, 지형 생성, 클라우드 렌더링 등에 사용될 수 있으나 덜 현실적인 결과를 생성해냅니다. Gradi..
Multiply Node란? Multiply Node는 두 개의 입력 값(A, B 2개의 채널)을 받아서 그 두 값을 곱한 결과를 내보내는 역할을 합니다. 예를 들어, 두 개의 색상을 입력으로 받는다면, Multiply Node는 두 색상을 섞은 결과를 출력합니다. 즉, Multiply Node는 두 입력 값을 '조합(섞는)’하는 역할을 한다고 생각하시면 됩니다. Multiply Node는 색상 뿐만 아니라 다른 벡터나 매트릭스 값들에도 사용할 수 있습니다. 예시 1 빨간색 바와 파란색 바를 각각 벡터로 표현할 때, 빨간색 바는 (1, 0, 0)으로, 파란색 바는 (0, 0, 1)로 표현할 수 있습니다. 이 두 벡터를 Multiply Node에 입력으로 주면, Multiply Node는 두 벡터를 곱한 ..
Split Node란? Split Node는 입력 벡터를 4개의 Float 출력인 R, G, B 및 A로 분할합니다. 출력 벡터( R, G, B, A)는 입력의 개별 채널 (R, G, B 및 A )에서 정의됩니다. 입력 벡터의 차원이 4(Vector 4)보다 작은 경우 입력에 없는 출력 값은 0이 됩니다. 활용 예시 Position Node에서 추출한 입력 벡터를 Split Node에서 활용할 수 있습니다. Position Node의 3차원 공간 위치 정보를 Split Node를 통해 x, y, z 좌표로 분리할 수 있습니다. 분리된 좌표들을 개별적으로 조작할 수 있습니다.
Position Node란? Position Node는 그래픽을 만드는 데 필요한 각각의 점(버텍스) 또는 색상의 단위(프래그먼트)의 위치를 알려주는 역할을 합니다. Position Node에는 5개의 space가 존재합니다. Space 설명 Object 객체 자체를 기준으로 한 위치를 나타냅니다. View 카메라 뷰를 기준으로 한 위치를 나타냅니다. World World를 기준으로 한 위치를 나타냅니다. Tangent 텍스처 좌표를 기준으로 한 위치를 나타냅니다. Absolute World 모든 Scriptable Render Pipeline에 대해 Scene의 객체의 절대적인 월드 위치를 항상 반환합니다. Object & World Space 차이 설명 연습 Position Node의 Object S..
가장 큰 특징으로는 UV와 Tangents좌표계의 의존성을 없애기 Generic Surface 접근을 돕는다 평면 투사(Projection)를 사용한다 3가지의 mapping을 Blend한다 Texturing Without UV Coordinates Texture mapping을 수행하기 위해 일반적으로 사용되는 방법은 Mesh에 각 Vertex가 저장된 UV-좌표계를 사용하곤 한다 그러나, 이렇게 하는 것이 유일한 방법은 아니다 때때로, 사용가능한 UV 좌표계가 없을 수도 있기 때문이다 예를 들어, 임의의 Shpae의 절차적 Geometry 과정일 때 런타임에서 Terrain이나 Cave를 생성할 때, 적절한 텍스쳐 UnWrap를 위한 UV 좌표계를 생성할 수 없다 이러한 경우, 우리는 대안적인 방법으..
툰 셰이더 임포트 하기 유니티 툰 셰이더는 애니메이션, 영화, 게임 등 많은 곳에서 사용되는 기술입니다. UNITY-CHAN! OFFICIAL WEBSITE ユニティちゃん公式ウェブサイトです。ユニティちゃんの各種データダウンロードやイベント、最新情報などをお届けします。 unity-chan.com 유니티 Chan 공식홈페이지에 들어가서 위 사진에 보이는 친구를 찾아서 다운받으면 됩니다. 툰 셰이더 적용해보기 오른쪽이 Toon Shader가 적용된 예입니다. 아직 이상하므로 파라미터를 조정해주어야 합니다. 메테리얼을 눌러서 [Toon]- [UnityChanToonShader]항목에 있는 여러가지 툰 셰이더 중 하나를 선택해준다. 가끔 메테리얼이 보라색으로 뜨면 아래와 같은 방식으로 해결하시면 됩니다. 상단 [Wind..
첫 번째로 Scene Depth와 Camera 노드를 사용했고 Screen Position을 이용하였으며 두개의 노드를 Substract노드를 통해 뺐습니다. 두 번째로 파도의 타일링을 구현했습니다. Time노드와 각각 Tiling and Offset 노드를 통해 output을 Sample Texture 2D에 각각 넣어줬씁니다. 세 번째로 파도의 출렁임을 표현하기 위해 Position(Object)노드를 사용하였고 Split을 통해 R, B채널만 뽑아왔씁니다(파도의 높이를 뽑아오려면 G채널 뽑아와야 하는거 아닌가..?) 최종 Graph 결과물은 이러하다. 노말맵이 약간 이상하다. 파도의 출렁임이 좀더 자연스러웠으면 좋겠다 싶었다.
모델 제공은 우리XREAL팀인 '오연주'님께서 제공해주셨다! 금손이심... 번개가 번쩍번쩍하는 효과를 추가하고 싶으나 실력부족.. VFX로 하면 이쁠 것 같은데.. + 번개 이펙트 추가함 파티클 시스템을 활용함
오늘은 움직이는 토네이도를 구현해봤다 먼저 핵심 노드들을 살펴보자 Radial Shear노드를 알아보자 Description Applies a radial shear warping effect similar to a wave to the value of input UV. The center reference point of the warping effect is defined by input Center and the overall strength of the effect is defined by the value of input Strength. Input Offset can be used to offset the individual channels of the result. (출처 - https://..
오늘은 Dissolve Shdaer를 공부해봤다. 이 움짤을 생성하기 위해 프로그램도 설치했다 Vv 일단 Alpha Clip Threshold에 대해 너무 설명을 잘해준 그림이 있어 가져왔다. (출처 - https://www.youtube.com/watch?v=taMp1g1pBeE) 알파클립스레드홀드의 기준값보다 낮은 애들은 invisible처리된다 어쨌든 Dissolve Shdaer 그래프를 살펴보자. 생각보다 별거 없다. Simple Noise를 추가해 사라질 때 이미지를 추가해주는 거다. Step노드를 추가한다 Step 함수란 Edge와 In으로 결정되는데 In이 Edge보다 크거나 같으면 1 아니면 0이다 Step의 Out을 Color와 곱해줘서 emission에 넣어주면 끝이다! 근데 궁금한게 ..