유니티에서 커스틱(water caustics) 이펙트 만들기
- 유니티게임개발/기초공부
- 2020. 2. 8.
유니티(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)프로젝터의 높이, 재질의 속성을 조절하여 이펙트(애니메이션)을 완성하였다.
'유니티게임개발 > 기초공부' 카테고리의 다른 글
유니티에서 스카이 박스 블렌딩하기(SkyboxBlended) (3) | 2020.02.10 |
---|---|
유니티 - perlin noise를 이용한 wave 애니메이션 (0) | 2020.02.08 |
유니티에서 스카이박스 환경맵 설정하기(6sided, cubemap, panoramic) (0) | 2020.02.07 |
유니티에서 Pegasus를 이용한 카메라 path 애니메이션 (0) | 2020.02.07 |
유니티에서 unity recorder v2 설치하기(실시간 게임 플레이 캡쳐) (2) | 2020.02.07 |