유니티에서는 여러 개의 스프라이트가 한 이미지 파일에 들어있는 집합을 이용하여 무작위로 선택된 스프라이트 모양으로 파티클을 발생시킬 수 있다.
이 포스트에서는 스프라이트 시트를 구해 위와 같은 무작위 파티클을 구현하는 방법을 알아본다.
스프라이트 시트 구하기
무료로 스프라이트 시트를 다운로드할 수 있는 인터넷 사이트가 있다.
https://www.pngwing.com/ko/search?q=%EC%8A%A4%ED%94%84%EB%9D%BC%EC%9D%B4%ED%8A%B8+%EC%8B%9C%ED%8A%B8
여기서 원하는 시트를 다운로드 하도록 하자.
스프라이트 시트 생성하기
받은 이미지를 프로젝트에 넣고 인스펙터에서 Sprite Mode > Multiple로 설정한 뒤 Apply를 눌러 적용한다.
그리고 Sprite Editor로 들어가면 Slice 메뉴가 있는데 Type을 Automatic으로 지정하고 Slice를 진행한다.
시트의 모양에 따라 다른 방법을 선택할 수 있다.
잘 되었다면 깔끔하게 경계가 나온 것을 볼 수 있다. 확인 후 우측 상단의 Apply 버튼을 눌러 적용한다.
그러면 이렇게 스프라이트 집합을 확인할 수 있다.
파티클용 머티리얼 생성
파티클에 적용할 머티리얼을 만들어보자.
새로운 머티리얼을 하나 생성하고 Diffuse에 아까 만들었던 스프라이트 시트를 지정하기만 하면 된다.
파티클 생성
파티클 시스템을 추가하고 기본적인 설정을 해준다. 한 번에 다수의 파티클이 방출되는 형태로 만들었다.
Renderer 옵션에서 아까 만들었던 머티리얼을 넣어준다.
그리고 Texture Sheet Animation 옵션을 활성화 한다.
Tiles 속성에서 스프라이트 시트가 몇 열 몇 행(X, Y)인지 지정해주고 Frame over Time의 설정에서 Random Between Two Curves로 바꿔준다. 기본으로 둘 경우 파티클의 모양이 무작위로 변하게 된다.
커브를 전체를 채워 각 파티클이 스프라이트를 무작위로 선택하고 그 스프라이트가 끝까지 유지될 수 있도록 해준다.
그러면 다양한 모양의 티클이 생성되는 걸 볼 수 있다.
'Unity Engine > 기초 테크닉' 카테고리의 다른 글
[Unity] 오브젝트 클릭과 터치 감지 구현하기 (1) | 2024.11.18 |
---|---|
[Unity] 2D 오브젝트가 이동 중에 걸리는 현상 - Ghost Vertices (0) | 2024.11.10 |
[Unity] 스프라이트 뭉치로 애니메이션 만들기 (1) | 2024.11.05 |
[Unity] 유니티 오브젝트의 null 확인 (0) | 2023.09.03 |
유니티 Raycast로 3D 오브젝트 클릭과 드래그 (2) | 2022.09.20 |