본문 바로가기
유니티/shaderGraph

유니티 셰이더 그래프 예제 22, 간단한 축 기반 에니매이션, Unity ShaderGraph Simple Animation base axis

by NGVI 2021. 4. 27.

유니티 셰이더 그래프 예제 22, 간단한 축 기반 에니매이션, Unity ShaderGraph Simple Animation base axis

이번에는 셰이더 그래프를 통해서 간단하게 에니매이션이라고 할까요? 그런 효과를 구현해 보도록 하겠습니다.

 

List 모델로 셰이더를 하나 만들어 주세요

 

특정 축(여기서는 Z) 기반으로 Sine을 생성하는 노드

노드 구성

시간 정보와, Z값으로 Sine을 생성합니다.

 

기존 Position Y 값에 더한 뒤 다시 Position으로 활용

노드구성

 

멈춰있는 모델들

칼라와 노말이 적용된 상태

해당 ShaderGraph 적용

실행결과

음 뭔가 되는거 같은데 정리해보자.

Y축으로 더해지는 값의 강도가 너무 강한 거 같으니 sine출력에 적당한 수를 곱한다.

움직이는 강도를 조절하고 싶다면 Position을 기반으로 Sine파를 만들 때 수치를 만져주면 된다.

 

노드 구성 수치 위치

두 수치를 적절하게 만져본다.

적용 결과

적용결과

이건 그럴싸하다.

 

요건 또 버택스 셰이더라서 그다지 무리도 없다.

 

본 애니메이션 비교해도 빠를 거라 생각된다.(비교해본 것은 아니다. 필요에 따라 비교할 예정이다.)

 

다른 축을 기반으로 적용도 해보자.

 

Z축 기준 변환 노드

Z축 기준 변환 노드 변경부분

실행결과

다양하게 적용가능

요런거 배경에 깃발이라던지 요런 거에 넣으면 쓸만한 거 같다.

 

봐주셔서 감사합니다.

댓글