1. 파티클 시스템 속성
파티클 시스템의 속성 값에 대해서는 아래 글을 참조해주세요.
2. 파티클 시스템 활용
파티클 시스템은 작은 객체들을 활용하여 시각적인 효과를 주기에 좋다. 눈, 비, 안개와 같은 효과들은 파티클 시스템을 사용하면, 쉽게 구현이 가능하다.
2.1 눈 내리기 (Snowing)
아래의 이미지와 같은 눈이 내리는 효과를 구현한다.
2.1.1 파티클 시스템 생성
GameObject → Effects → Particle System
2.1.2 파티클 시스템 방향 설정
생성한 파티클 시스템의 트랜스폼을 수정하여, 위에서 아래로 향하도록 설정한다.
포지션은 위쪽( Y축 )에 위치하도록 설정한다.
Position (0.0, 8.0, 0.0) Rotation (90.0, 0.0, 0.0)
Ratation의 X 값을 90으로 주면 아래로 향하도록 회전시킬 수 있으며, -90을 설정하면, 위를 향하도록 설정할 수 있다.
※ 다른 방법으로는 Shape 모듈을 수정하여, 파티클의 방향을 설정할 수 있다. Shape 모듈은 Position, Rotation, Sacle 등의 값을 가지고 있으며 수정 가능하다.
2.1.3 파티클 크기 설정
파티클 시스템의 Start Size를 수정하여, 파티클의 크기를 설정한다.
Start Size의 ▼ 아이콘을 눌러서 Random Between Two Constants를 선택한다.
크기는 0.1 ~ 0.5로 설정한다.
2.1.4 파티클 시스템 Shape 모듈 변경
Shape 모듈을 선택하고, Shape을 Box로 변경한다.
Scale X 값을 20으로 설정한다.
※ Transform의 Rotation을 수정하였다면, 아래 이미지처럼
2,1.5 하위 파티클 시스템 생성
앞서 만든 파티클 시스템의 하위 요소로 파티클 시스템을 생성한다.
GameObject → Effects → Particle System
새로 생성한 파티클 시스템의 파티클이 보이지 않는다면, Scene View의 파티클 이펙트를 Stop → Play를 한다.
2.1.6 파티클 시스템 방향 설정
새로 만들어진 파티클 시스템의 방향을 확인한다.
파티클 시스템의 방향이 다르면, 같도록 수정한다. Transform이나 Shape 모듈을 수정한다.
2.1.2에서 Transform을 수정하여, 방향을 설정하였다면, 새로 만든 파티클 시스템 또한 동일한 방향으로 파티클을 방출한다. 이는 Trnasform 수정은 하위 요소에도 영향을 주기 때문이다.
Shape 모듈을 수정하였다면, 새로 만든 파티클 시스템은 다른 방향으로 설정되어있다. Shape 모듈은 하위 요소에 영향 주지 않기 때문이다.
2.1.7 파티클 시스템 속도, 크기, 라이프타임 수정
Start Lifetime, Start Speed, Start Size의 설정을 Random Between Two Constants로 변경한다.
각각의 값을 아래와 같이 수정한다.
Start Lifetime : 2~5, Start Speed : 3~5, Start Size : 0.1~0.5
2.1.8 파티클 시스템 Shape 모듈 변경
2.1.4에서 설정한 것과 같이 Shape을 Box로 설정하고, Scale X의 값을 20으로 수정한다.
2.1.9 파티클 시스템 Renderer 모듈 수정
※ 위의 이미지 파일은 어디든 사용 가능합니다. 출처는 밝혀주길 바랍니다.
위의 파일을 다운로드한다. 본인이 만든 눈 결정 이미지이다.
압축을 풀고 이미지 파일을 프로젝트 Asset으로 드래그하여 추가한다.
Proejct View → Create → Material → Snow Particle을 생성한다.
머티리얼을 수정한다.
Shader → Mobile → Particles → Additive
Snow particle 이미지를 머티리얼에 추가한다.
머티리얼 설정을 완료하면, 머티리얼을 Renderer에 등록한다.
2.1.10 파티클 시스템 Noise 모듈
2.1.9까지 완료하였다면, 두 개의 파티클 시스템에서 서로 다른 파티클을 생성하여 눈 효과를 만들고 있는 것을 볼 수 있다. 마지막으로 좀 더 자연스러운 눈 효과를 표현하기 위해 파티클에 노이즈 효과를 준다.
Noise를 사용 설정한다.
Noise 모듈을 추가만 하여도, 파티클의 움직임이 역동적으로 바뀐다.
Noise 모듈의 속성 값을 변경하여, 세밀한 움직임을 표현할 수 있다.
'유니티 > 기초' 카테고리의 다른 글
유니티 코루틴(Coroutine) 과 IEnumerator (0) | 2020.11.30 |
---|---|
유니티 데이터 저장 및 불러오기 (PlayerPrefs) (0) | 2020.11.29 |
유니티 파티클 시스템 (Particle System)- 속성 (1) | 2020.11.27 |
유니티 애니메이션(Animation) (0) | 2020.11.26 |
유니티 오디오 리스너(Audio Listener) & 오디오 클립(Audio Clip) (0) | 2020.11.25 |