관리 메뉴

Unwound Developer

유니티 - 파티클 효과 (Unity Particle) 본문

Unity/Unity, C#

유니티 - 파티클 효과 (Unity Particle)

unwind 2022. 2. 1. 16:13
반응형

슈퍼마리오에서 마리오가 벽돌을 점프로 부술 수 있어요.

벽돌이 사라지는건 그냥 OnCollisionEnter2D를 이용했는데, 벽돌이 부서지는 애니메이션은 따로 만들 수가 없어요.

전 애니메이션을 만들 수 없어서..

 

그런데, 유니티 내부에 파티클이라는 기능이 있었어요.

이걸 이용해서 벽돌이 부서지는 애니메이션을 구현했습니다.

생각보다 유니티에 다양한 기능이 많아, 꽤 편리하게 많은 것들을 만들어 낼 수 있을 것 같습니다.

 


 

Hierarchy에 파티클 시스템이 있습니다.

그리고 부서질 블록에 자식으로 추가했어요.

파티클 시스템의 Inspector를 보면 뭐가 잔뜩 있습니다.

 

duration부터 delay, speed 이런건 말그대로 효과가 나타나는 지속시간, 시작시간, 속도 등 인데

파티클 효과가 게임창에서 계속 보여지기때문에 보면서 조절하면 됩니다.

이런식으로 애니메이션이 보입니다.

 

파티클 인스펙터의 Shape 부분이에요. 텍스쳐가 가장 중요하겠죠.

저는 부서질 블록의 이미지를 Material로 만들어 가져왔어요.

Block이미지를 Material화

이대로 사용하면 블록의 부스러기들이 너무 큰 이미지니까 부자연스러울거에요.

Rnderer에서 Min Paricle Size와 Max Particle Size를 0에서 0.5로 하면

부서진 블록 조각들이 원래 블록보다 작아서 자연스러울거에요.

그 다음에 부서질 블록들에 스크립트들을 넣어줬는데 코드는 간단해요.

그냥 Player의 머리와 부딫혔을때, particle.Play()를 해주면 애니메이션이 작동합니다.

 

여기서 구현한것들을 움짤같은거로 올리고싶은데 어떻게 하는질 모르겠네요........

여기까지가 블록의 부서짐 구현이었어요.

반응형