상세 컨텐츠

본문 제목

Shader Graph 공부하기_Gradient Shader(1)

Unity/Shader Graph

by Nemopoly 2024. 6. 17. 23:24

본문

 

 오늘의 결과물

 


 

먼저 Position 노드를 꺼내서 UV값을 분리해준다 이때 Split 노드로 분리해준다.

1번 이미지_R채널 연결
2번 이미지_G채널 연결
(왼쪽)1번 이미지 결과 /(오른쪽)2번 이미지 결과

 

그리고 연결하면서 생각한 점은 UV 노드와 비슷한 개념이면은 어떻게 다른가라는 생각을 했습니다. 그 전에는 UV노드로 그라데이션 쉐이더를 만들려다가 실패한 경험이 있는데, 이때 경험을 생각해보면은,

 

UV 노드는 사용하는 Map상 기준이 되고(2D, 에디터에서 x,y축을 생각해보자 ), Position 노드는 3차원상의 위치를 계산해주는 점이 다른다고 생각한다. (에디터에서 x,y,z축을 생각해보자)

 

저는 해당 쉐이더를 위 아래로 움직이게 할 생각이므로 G 채널(V축)을 연결해주고 Add노드를 연결해줍니다.

그리고 해당 프로퍼티를 머테리얼 안에서 자유롭게 조정 할 수 있게끔 Gradient Position 이라는 Float 노드 추가해서 연결해줍니다. 

 

그 다음에는 중간 연결하는 부분을 자연스럽게 풀어주는 노드를 추가해줍니다.

가운데 심? 부분을 부드럽게 풀어봅시다

 

Smoothstep이라는 노드를 추가해서 연결해줍니다.  Smoothstep 이라는 노드를 저도 여기서 처음 배워서 자세한 역할과 기능에 대해서는 조금 더 공부해서 기록해 놓겠습니다.

원하는 부드러움 정도를 설정해줍니다.

 그리고 여기서 제가 추가해보고 싶었더 프로퍼티가 있었는데 가운데 부드러움 정도(콘트라스)를 조정하는 기능도 붙여보고 싶었는데, 여러번 시도 해봤지만 잘 안되서 이번에는 패스했습니다.  알게되면은 다시 공유 해보겠습니다.  

 

그 마지막으로는 색깔을 추가해주면은 완성입니다

 

 

Sphere에 적용해봤을 때 모습

 

 이번에 처음으로 그라디언트 쉐이더를 만들어 봤는데, 처음치고 나쁘지는 않았지만, 아까 위에서 말한  콘트라스트 조정하는 기능이라던가, 필요한 기능을 붙이면은 여기저기 사용 할만 하지 않을까 생각이 들었습니다. 그래도 가볍게 시도해보기는 나쁘지 않은 챌린지였던 것 같습니다 :)

 

 

 

읽어 주셔서 감사합니다!

'Unity > Shader Graph' 카테고리의 다른 글

Shader Graph 공부하기 : X-Ray Shader 만들기  (1) 2024.07.01

관련글 더보기