Changwoo Hahn

email icon

유니티에서 제공하는 Particle System을 동적으로 제어하는 데는 한계가 있어서 셰이더를 활용하여 새로운 Particle System을 만들게 됐다. 사실 필요로하는 기능은 기존 particle system에서도 다 가지고 있지만 문제가 되었던 부분은 동적으로 파티클이 퍼지고 합쳐지는 것을 구현하는 것이였다.

이러한 파티클의 한계도 명확한데, 파티클의 개수를 유니티 에디터상에서 쉽게 늘릴 수 없고 3D프로그램에서 만든 파티클 모델을 유니티로 넘겨주어야 한다. 이때 오브젝트에 id를 부여하기 위해서 vertex color를 활용하기 때문에 3D프로그램에서 파티클별로 vertex color를 따로 지정해주어야 하는데 파티클이 많아질 수 록 수동으로 하는 것은 불가능하고 스크립트를 작성할 필요가 있어보였다.

Shader Particle Example