유니티에서 커스틱(water caustics) 이펙트 만들기

반응형

유니티(unity)에서 커스틱(water caustics) 이펙트 만들기

BlobLightProjector와 커스텀 쉐이더, 스크립트를 이용하여 커스틱 이펙트 애니메이션을 만드는 방법

(아래 튜토리얼을 요약 및 정리)

https://youtu.be/OvJ7u2Y9Arw

 

1)씬에 플레인을 생성한다.

 

2)씬에 BlobLightProjector를 추가한다. 해당 에셋은 유니티의 standard assets에 포함된 프리팹으로 에셋 스토어에서 다운로드할수있다.

 

해당 어셋은 standard assets의 effects>projectors>prefabs에 위치한다.

 

3)BlobLightProjector가 오브젝트에 빛을 투사하는것을 확인할수있다.

 

4)BlobLightProjector의 orthographic에 체크한다(직교투영)

 

 

4)아래 웹사이트에서 커스틱 쉐이더와 프로젝터 스크립트를 제공한다. 쉐이더를 프로젝트에 임포트하고 재질의 쉐이더로 설정한다.

https://www.patreon.com/posts/21585369

 

5)아래 스크립트를 프로젝터에 추가한다. 이 스크립트는 위 웹사이트에서 제공한 자바 스크립트를 c#으로 재작성한것이다.

 

6)커스틱 애니메이션의 초당 프레임 개수(frame per second)와 텍스쳐 개수(tex size)를 입력하고 커스틱 애니메이션 시퀀스의 모든 텍스쳐를 참조시킨다. 텍스쳐 제작방법 또한 튜토리얼에서 정보를 얻었으며 아래 글에 내용을 정리해놓았다.

https://learnandcreate.tistory.com/165

 

7)게임을 실행하면 프로젝터가 30장의 텍스쳐를 순차적으로 투사하는것을 확인할수있다.

 

8)프로젝터의 높이, 재질의 속성을 조절하여 이펙트(애니메이션)을 완성하였다.

 

반응형

댓글

Designed by JB FACTORY