본문 바로가기

유니티/shaderGraph27

유니티 셰이더 그래프 예제 27 클로킹 셰이더, Unity shaderGraph cloaking 유니티 셰이더 그래프 예제 27 클로킹 셰이더, Unity shaderGraph cloaking 클로킹이라고 불리는 걸 구현해보도록합시다. 적당히 내가 투명화 된 느낌이 나는 그런 효과입니다. Lit 셰이더를 하나 생성합니다. Graph Inspector에서 Alpha Blend 설정을 마줘줍니다. 클로킹을 하면서 배경색(배경이 랜더링된 택스쳐를) 을 오브젝트가 사용할 것인데 이럴때는 해당 블랜딩이 설정되어 있어야 합니다. 추가로 배경이 랜더링된 택스쳐를 참조하려고 할때는 추가작업이 선행되어 있어야 합니다. 사전체크사항 관련하여는 다른 글에 있는 부분 참고를 부탁드립니다. 링크는 남겨둡니다. Opaque Texture 활성화 여부에 관한 내용이 아래 글 상부에 나와있습니다. 유니티 셰이더 그래프 예제 1.. 2021. 5. 1.
유니티 셰이더 그래프 예제 26 카메라 거리에 따른 효과 생성+조개 에니메이션, Unity ShaderGraph Camera Distance Effct + shellfish open animation 유니티 셰이더 그래프 예제 26 카메라 거리에 따른 효과 생성+조개 애니메이션, Unity ShaderGraph Camera Distance Effct + shellfish open animation 이번에는 카메라 거리에 따른 변화를 유니티 셰이더 그래프로 표현해보겠습니다. 먼저 Lit 셰이더를 하나 만들고 Graph Inspector에서 알파를 사용하게 만들어주세요 일단 먼저 간단하게 카메라 거리에 따라 알파블랜딩을 넣어보겠습니다. 노드 구성 distance에 add 하는 값을 효과를 볼거리라고 생각해주세요 실행결과 두 번째로는 카메라 거리에 따라 조개가 입을 여는 효과를 구현 해보도록 하겠습니다. 먼저 카메라 거리에 따라 물체를 회전시키게 적용 노란 부분은 위에서 만든 노드 파란 부분은 노란 부분 .. 2021. 4. 30.
유니티 셰이더 그래프 예제 25, 찢어진 깃발효과+에니매이션, Unity ShaderGraph tear flag animation 유니티 셰이더 그래프 예제 25, 찢어진 깃발 효과+에니매이션, Unity ShaderGraph tear flag animation 깃발을 구현해 봅시다. 찢어진 효과와 애니메이션, 그리고 uv를 사용한 축 제한 등이 주요 내용이 될 거 같습니다. lit 모델로 하나 생성합니다. Graph Inspector 설정 Alpha clip 설정을 해줍니다. 찢어진 효과를 내줄 때 사용됩니다. 깃발 에니메이션 효과 제작 노드 구성 포지션을 x를 기반으로 사인파의 베이스를 생성합니다. 시간 흐름을 더해주어 움직임을 만들어 주며 uv의 x 값 0~1로 펴진다는 전재하에, 사용해주어서 깃발의 시작점의 움직임을 최소화시켜줍니다. uv를 통한 마스킹 그리고 값을 쪼개서 z 값에 더해줘 봅니다. 실행결과 깃발이 시작 부분은.. 2021. 4. 29.
유니티 셰이더 그래프 예제 24, 폭포 효과, Unity ShaderGraph WaterFall 유니티 셰이더 그래프 예제 24, 폭포 효과, Unity ShaderGraph WaterFall 폭포 효과를 만들어 봅니다. 유니티 셰이더 그래프로, 유니티 공식 예제를 보고 따왔습니다. 문제는 공식 예제를 좀 보려고 소스를 받았는데, 대부분 리소스가 안 올라와서, 버전을 같이 맞추었는데도.. 메쉬와 텍스처들이... 공부 차원에서 좀 얼어서 자세히 보려 했으나, 쉽지 않았습니다. 실제로 하고 싶었던 건 아래 물에 구현에서 폼(물과 해안 경개선에서 거품이라던지) 반사효과(유사)라던지 이런 쪽을 보고 싶었지만, 요건 리소스가 다 나가 있어 일단 못 보겠더라고요 셰이더 소스 자체는 봐집니다. 적당히 보았습니다. 그중에서 WaterFall만 좀 가져와 보았습니다. 폭포 노드 구성 보로노이를 하나 만드는데 입력값.. 2021. 4. 28.
유니티 셰이더 그래프 예제 23, 인터랙티브 버텍스 효과, Unity ShaderGraph Interactive Vertex Effect 유니티 셰이더 그래프 예제 23, 인터랙티브 버텍스 효과, Unity ShaderGraph Interactive Vertex Effect 요번에는 인터렉티브 버택스 효과를 만들어 봅시다. 먼저 Lit 모델을 하나 만듭니다. 버택스를 조절시켜 표면이 지글거리를 효과를 만들어 볼 건데, 쉽게 생각하면 노말 방향으로 버택스를 조절시ᄏ면 얼추 되지 않을까란 상상을 하실 수 있습니다. 먼저 그렇게 해봅시다. 노말 방향 대비 버택스 조정해보기, 노드 구성 아래는 변화를 보기 위해 시간 값 기반 변화량 값을 만들어서 연결한 것이고 빨간 태두리 안이 버택스를 움직이는 로직입니다. 실행결과 사실 지글대는 느낌도 없고, 그냥 커졌다 작아졌다 정도. 그리고 무엇보다 치명적인 것은 가운데 여러 부분에서 크랙이 생긴다는 점입니.. 2021. 4. 28.
유니티 셰이더 그래프 예제 22, 간단한 축 기반 에니매이션, Unity ShaderGraph Simple Animation base axis 유니티 셰이더 그래프 예제 22, 간단한 축 기반 에니매이션, Unity ShaderGraph Simple Animation base axis 이번에는 셰이더 그래프를 통해서 간단하게 에니매이션이라고 할까요? 그런 효과를 구현해 보도록 하겠습니다. List 모델로 셰이더를 하나 만들어 주세요 특정 축(여기서는 Z) 기반으로 Sine을 생성하는 노드 시간 정보와, Z값으로 Sine을 생성합니다. 기존 Position Y 값에 더한 뒤 다시 Position으로 활용 멈춰있는 모델들 해당 ShaderGraph 적용 실행결과 Y축으로 더해지는 값의 강도가 너무 강한 거 같으니 sine출력에 적당한 수를 곱한다. 움직이는 강도를 조절하고 싶다면 Position을 기반으로 Sine파를 만들 때 수치를 만져주면 된다.. 2021. 4. 27.
유니티 셰이더 그래프 예제 21, Triplanar 사용을 통해 메시에 텍스처 입혀보기 + snow 효과, Unity shaderGraph Triplanar + snow 유니티 셰이더 그래프 예제 21, Triplanar 사용을 통해 메시에 텍스처 입혀보기 + snow 효과, Unity shaderGraph Triplanar + snow 이번에는 유니티 셰이더 그래프의 Triplanar 노드를 사용해 봅시다. Lit 셰이더를 하나 준비합니다. 화면에 태스트할 메쉬를 가져다 둡니다. 돌 같은 형태의 메쉬에 잘 어울립니다. Blackboard에 사용할 텍스처를 등록합니다. 노드 구성 다음과 같이 노드를 구성합니다. 실행결과 절대좌표 기준으로 적당히 잘 들어갔습니다. 딱히 텍스처가 찟어져 보이는 그런 느낌도 없죠. 택스쳐가 타일링 된 티는(반복) 솔직히 좀 나 보이지만, 나쁘지 않은 수준인듯합니다. Triplanar의 Tile 수치를 수정해보시면 타일링 정도를 더 보실 수 있.. 2021. 4. 27.
유니티 셰이더 그래프 예제 20, 파티클 모양 만들어보기, 둥근 모양, 알파 둥근, 표창 모양, 체크, rings, shatter, spiral 만들어보기 유니티 셰이더 그래프 예제 20, 파티클 모양 만들어보기, 둥근 모양, 알파 둥근, 표창 모양, 체크, rings, shatter, spiral 만들어보기 유니티의 셰이더 그래프를 통해 파티클 모양을 몇 가지 만들어 봅시다. 먼저 화면에 적당히 셰이더가 빠진 파티클을 하나 만들어 봅니다. 파티클의 모양세는 별로 중요하지 않습니다. 입자의 모양을 셰이더로 결정하는 테스트 용도일 뿐입니다. Unlit으로 셰이더를 하나 만듭니다. Graph Inspector Surface Transparent로 설정해줍니다. 먼저 하시기 전에 그냥 텍스처 만들어 넣으면 되지 뭐하러 이런 거 하냐 라고 말씀하실 수 있습니다. 하지만 이렇게도 되는구나라는 생각으로 한번 쓱 봐 두시면 언젠가 써먹을 날이 있을 겁니다. 참고로 파티.. 2021. 4. 27.
유니티 셰이더 그래프 예제 19, 축 사라짐 효과 구현, Unity ShaderGraph Phase In And Out 유니티 셰이더 그래프 예제 19, 축 사라짐 효과 구현, Unity ShaderGraph Phase In And Out 유니티 셰이더 그래프를 이용하여 축 시준으로 사라지는 효과를 구현해 봅시다. Lit Shader Graph를 하나 생성하시고요. Graph Inspector Alpha Clip와 Two Sided 둘 다 체크 Phase In And Out 기본 노드 구성 Y축 기준 작업을 합니다. StepIn 값을 외부에서 받도록 해두었습니다. 일단 0입니다. step에서 in 값을 기준으로 크기 비교를 하여 1,0으로 값을 만듭니다. 그리고 반전시켜서 Alpha Clip Threshold에 넣습니다. 추가로 Alpha 값도 설정 0.5 해줍니다. 출력 결과 StepIn 값을 조절해가며 캡처했습니다. .. 2021. 4. 27.
유니티 셰이더 그래프 예제 18, 액체 잡음 구현, Unity ShaderGraph LiquidNoise 유니티 셰이더 그래프 예제 18, 액체 잡음 구현, Unity ShaderGraph LiquidNoise LiquidNoise를 셰이더 그래프로 구현해 봅시다. 머라 해석해야 몰라 그냥 직역 적당히 해두었습니다. Lit Shader Graph 하나를 생성합시다. 액체잡음 용 기본 노드 구성 UV 를 World Position 기준으로 생성하는 걸 봅시다. 시간 변화량으로 이동시키고요, Noise를 하나 생성해 바로 칼라 값에 넣어주고 있습니다. 현재 상태 출력 외부에서 칼라값을 둘을 가져와 믹스해서 출력시켜줍니다. 노드 구성 칼라 값을 외부에서 2개를 가져오게 만들고 Lerp 합니다. Lerp의 T값을 Noise출력밧으로 하고, Lerp 결과를 BaseColor에 넣습니다. 적당히 외부에서 칼라 값들을 .. 2021. 4. 27.
유니티 셰이더 그래프 예제 17, 홀로그램 구현, Unity ShaderGraph Hologram 유니티 셰이더 그래프 예제 17, 홀로그램 구현, Unity ShaderGraph Hologram 유니티 셰이더 그래프로 홀로그램을 만들어 봅시다. Unlit Shader Graph를 하나 생성하도록 하자. Graph Settings surface Transparent로 변경 홀로그램 기본 노드 구성 텍스처의 UV를 ScreenPosition 기반 UV로 하여서 화면 기준 해당 텍스처가 그려지도록 한다. 거기에 시간 변화량과 Tiling and offset을 이용 적당히 흐르게 만든다. 그리고 이걸 Alpha에 넣고 결과를 보도록한다. 결과 보기 칼라 값을 적용해보자. 노드 구성 외부에서 칼라 값을 하나 가져오고, 텍스처 결과와 곱해서 Base Color로 연결 그럴싸해 보이지만 간격이 너무 커 보이는 .. 2021. 4. 26.
유니티 셰이더 그래프 예제 16, 슬라이스 효과 구현, Unity ShaderGraph Sliced 유니티 셰이더 그래프 예제 16, 슬라이스 효과 구현, Unity ShaderGraph Sliced 슬라이스 효과를 구현해 봅니다. Lit Shader Graph 하나 제작합니다. Graph Inspecgtor 설정 Alpha Clip 설정 참조 기본 아이디어 기본 구성 노드 구성 포지선 정보주에 높이 정보만 빼옵니다. 그걸 Fraction에 넣습니다. Hlsl의 frac에 대응합니다. 소수점 부분만 가져옵니다. y축이 올라감에 따라 0~1이 반복됩니다. 요걸 step 하여 단편화시켜주고 이 값을 AlphaClip Threshold에 놓습니다. Alpha 또한 0.5 정도로 조절해 줍시다. 실행결과 텍스처를 적당히 챙겨 넣어줘 봅니다. 고쳐봅니다. 슬라이스의 간격이 좀 촘촘했으면 좋겠잖아요. 노드 구성 .. 2021. 4. 26.