생동감을 위해 비행기에 이펙트를 추가한다.
<1>. 추가 이펙트 (Thruster Effect, Trail Effect)
가속할 때 엔진에서 불이 나오는 Thruster Effect, 비행기가 지나갈 때 공기의 흐름을 보여주는 Trail Effect, 이렇게 총 2가지의 이펙트를 비행기에 추가해주려고 했다.
<1> - 1. Thruster Effect
Thruster Effect에서 나타나는 불꽃을 구현하기 위해 우선 무료 에셋을 다운로드하였다. 원래는 이런 에셋들은 ParticleSystem인 줄 알았는데, 이 에셋은 NiagaraSystem이었다. 그래서 둘의 차이를 찾아보니, 요약하자면 '나이아가라 시스템이 파티클 시스템의 상위호환이다.' 정도인 것 같다.
※ Niagara System 사용하는 법
1. 에디터에서 편집 툴바 -> 플러그인 -> 'Niagara' 검색 -> 'Niagara', 'Casacde To Niagara Converter' 체크
2. Build.cs 파일에 "Niagara" 추가
3. 캐시파일 다 지우고 새롭게 Generate 해주면 Niagara System 사용 가능.
C++로 작성할 때는 "#include "NiagaraSystem.h" 도 해줘야 한다.
우선 이펙트가 어느 위치에서 나타나게 할 것인지를 정하기 위해 Bone 구조가 나와있는 스켈레톤 메시에서 소켓을 추가해줘야 한다. (밑에 사진처럼 하면 된다. 스켈레탈 아니고 스켈레톤이다.)
여기까지 한 후, w를 누르면 Activate() 함수를 통해 소켓에서 나이아가라 이펙트가 나오게끔 했는데, 아무것도 나오지 않았다. 그래서 이펙트 쪽에 문제가 생겼다고 생각하여 살펴보았는데, 너무 복잡해서 뭘 건드려야 할지를 몰랐다. 그렇게 찾던 와중,
노드를 누르고, 빨간 동그라미에 보이는 로컬 스페이스를 체크해 주면 정상적으로 이펙트가 생성된다.
그래서 결과적으로 이런 모습이 나오게 된다.
<1> - 2. Trail Effect
Trail Effect에서 나타나는 공기의 흐름을 구현하기 위해 에셋을 다운로드하지 않고 나이아가라 이펙트를 직접 만들어보았다.
- 나이아가라 이펙트 만드는 경로 : 콘텐츠 브라우저 빈 공간 우클릭 -> 나이아가라 시스템 -> 선택된 이미터에서 나온 새 시스템 -> Simple Sprite Burst 검색 후 추가.
- 그런 후에 SimpleSpriteBurst 노드 맨 밑에 보이는 '렌더'에서 '스프라이트 렌더러'를 삭제한 후 '리본 렌더러'를 추가해 준다. (Sprite Renderer : 개별 입자. ex) 불꽃, 먼지, 폭발 / Ribbon Renderer : 입자가 선형 연결됨 ex) 궤적, 잔상 효과)
- Material에서 DefaultRibbonMaterial을 검색하여 설정해 준다. 보이지 않는다면 검색창 옆 설정에서 'Show Plugin Content'를 체크하고 다시 검색해 보자.
- Emitter Update에서 'Spawn Rate'를 추가해 준다. 이후에 오른쪽에 Spawn Rate 수치를 약 300 정도로 조절한다.
- Particle Spawn의 Initialize Particle에서 'Ribbon Width Mode'를 검색하여 Unset을 Direct Set으로 바꾸고 Ribbon Width를 15 정도로 조절한다.
- Particle Spawn에서 'Add Velocity'를 추가해 준다.
여기서 위치 하는것도 추가해주자!!!!!!!!!!!!!!!!!!!!!!!!!!! 예시도?
<1> - 3. 결과물
이제 밑의 영상과 같이 W키를 누르면 Thruster Effect, Trail Effect가 나타나고 W키에서 손을 떼면 없어진다.
'게임 개발 > 언리얼 개인 프로젝트-FlightFight' 카테고리의 다른 글
[언리얼 개인 프로젝트 - FlightFight/C++] #1. Pawn 설계 - (3) 총알 발사 (0) | 2024.12.24 |
---|---|
[언리얼 개인 프로젝트-FlightFight/C++] #1. Pawn 설계 - (2) Pawn 조작법 (0) | 2024.12.18 |
[언리얼 개인 프로젝트-FlightFight / C++] #1. Pawn 설계 - (1) Pawn 구성 (0) | 2024.11.28 |
[언리얼 개인 프로젝트-FlightFight / C++] #0. 프로젝트 기획 (0) | 2024.07.15 |