[Unity Shader] Vertex Wave

ILSINN·2025년 4월 18일
0

Unity Shader

목록 보기
5/6

개인 공부 기록용 글입니다.
작성자가 이해할 정도로만 정리해 놓은 것이니 설명이 매우 불친절합니다.
작성 기준 유니티 버전 : 6000.0.32 f1 (HDRP)

시험 기간이 되니 쉐이더 공부가 재미있음.
_누르면 영상으로 넘어감_

이번에 만든 것은 Vertex Wave.
단어 그대로 mesh의 vertex를 쉐이더 내에서 파도를 내는 것.
영상에서 본 것에서 내가 조금 손대서 바꿈.

먼저 노이즈를 만들어줌.
시간에 따라 변화하도록 UV에 Time을 곱해서 시간별로 변화하도록 함.
그 결과를 노이즈로 출력.

내가 본 영상에서는 uv대신 world position의 x,z를 vector2로 만들어서 사용했는데,
uv로 사용해도 별 문제 없을 것 같아서 난 uv로 사용.
다만 좀더 부드러운 파형을 만들고 싶으면 전자의 방법을 사용하길.

노이즈를 [-1,1]에서 선형 보간으로 값을 정규화하고 factor를 곱함.
이 값이 파도의 높이가 될 것임.

오브젝트 vertex의 position.y에 파도 높이 만큼 더해서 vertex position 값으로 넣으면 끝.

fragment에는 color와 alpha를 넣으면 끝.

이전에 소개한 intersection과 잘 섞으면 좋은 물 쉐이더를 얻을 수 있을 것임.
시간이 내면 만들어보고 여기에 올려보겠음.

profile
유니티유니티유니티

0개의 댓글