sprite 애니메이션 형태의 나이아가라 (폭발형태) => 퍼포먼스적으로 이득을 볼 수 있다 (연산량이 적음)
NS_Explosion 에 사용할 머티리얼 MT_SpriteAnim 생성
NS_Explosion
- 이미터 업데이트
Emitter State -> Life Cycle Mode Self 로 변경 -> Loop Behavior Infinite 로 변경
* 한 번만 나오는 효과를 하려면 Once 선택.
Spawn Burst Instantaneous 추가 -> 입자 1개만 할 거라서 카운트 1 로 설정
* 개수는 변경해도 됨!
- 파티클 스폰
Initialize Particle -> Lifetime Mode -> Random 4 ~ 8 로 설정
Initialize Particle -> Sprite Attributes -> Sprite Size Mode -> Random Uniform -> 200 ~ 800
* 랜덤한 효과를 주기 위해
Shape Location 추가 -> Shape Primitive Box / Plane 으로 변경 -> 박스 사이즈 변경
- 파티클 업데이트
Sub UVAnimation 추가 -> Setup 에서 프레임 0 ~ 90 으로 변경 -> Sprite Renderer 선택
- 렌더
스프라이트 렌더러 -> 스프라이트 랜더링 -> 머티리얼 -> MT_SpriteAnim 으로 설정
스프라이트 렌더러 -> 서브 UV -> 서브 이미지 크기 변경
- 결과
벡터 필드 ( 공간 안에 힘의 흐름(방향)을 맵핑 )
입자에 주어질 힘을 데이터 형태로 나타낸 것
입자가 벡터필드에 닿게 되면 그 방향으로 입자가 움직이게 된다.
https://docs.unrealengine.com/4.27/ko/RenderingAndGraphics/ParticleSystems/VectorFields/
벡터 필드
벡터 필드에 대한 개요, GPU 스프라이트와 어떻게 작동하는가에 대한 문서입니다.
docs.unrealengine.com
1. 블랜더 다운
2. Addons 설치
https://github.com/isathar/Blender_UE4_VectorFieldEditor
GitHub - isathar/Blender_UE4_VectorFieldEditor: Blender addon that adds support for working with 3D vector fields using the FGA
Blender addon that adds support for working with 3D vector fields using the FGA file format. - GitHub - isathar/Blender_UE4_VectorFieldEditor: Blender addon that adds support for working with 3D ve...
github.com
3. Edit -> Preferences -> Add-ons -> vector 검색 -> 활성화
4. vf_editor.py
33번째 78번째 줄 int() 로 형변환 해준다.
5. Particle Simulation
Scale 0.25 로 변경, Particle Lifetime 64 로 변경 후 Generate
6. 좌측 상단에 Add -> Force Field -> Turbulence
언리얼로 돌아와서 NS_Test 복제한 것 ( NS_Test1 ) 을 수정한다.
Apply Vector Field 를 추가하면, Sample Vector Field 를 반드시 추가해야한다.
Sample Vector Field 옵션
타일 x y z => 필드가 무한히 반복되는 ? 느낌..
ApplyFallOff
Apply Vector Filed 옵션
tightness 가 1에 가까울수록 벡터필드를 정확히 따라간다
Field Translate
시뮬레이션 포지션 -> 플레이어 포지션 으로 변경해야한다. (변수가 필요)
파라미터 -> 사용자 노출값 -> 새로 만들기 -> 일반 -> Vector -> Player Position 생성
링크인풋 -> 사용자 -> Player Position
BP_NiagaraEffect 생성 ( 액터 상속 )
추가 -> Niagara 검색 -> Niagara Particle System Component 해서 Root 밑에 둔다
Niagara 클릭해서 나이아가라의 시스템 에셋을 NS_TEST1 으로 설정한다
플레이어 위치를 매 틱마다 받아와야하기 때문에 Tick 이벤트 설정
NS_Test1 복제해서 NS_Test2 생성 ( 벌레 막 나오는 느낌 .. ? )
프로퍼티
시뮬레이션 타깃 CPU Sim, 바운드 계산 모드 Dynamic 로 변경
* 충돌을 사용해야되기 때문에
파티클 스폰
Initialize Particle -> Mesh Attributes -> Mesh Scale Mode Uniform 으로 변경 -> 3배 정도..?
* sprites 가 아니고 매쉬니까 mesh attributes 에서 값 조정해주어야한다
파티클 업데이트
Collision 추가
Gravity Force 추가
렌더
메시 렌더러로 변경
메시 Brave_ladybug 설정
페이싱 모드 Velocity 로 하면 바라보는 방향으로 움직인다
나이아가라를 이용해서 이동? 하는 애니메이션 느낌 만들기
랜더러 제거
'언리얼 5' 카테고리의 다른 글
231016 랜드스케이프 (0) | 2023.10.16 |
---|---|
231013 애니메이션(?) 나이아가라 (0) | 2023.10.13 |
231011 포스트 프로세스 외곽선 효과 / 나이아가라 (0) | 2023.10.11 |
231010 PaperBurn 효과 제작 및 몬스터에 적용하기 / Post Process (0) | 2023.10.10 |
230926 재질 (0) | 2023.09.26 |