Unreal Engine/게임클래스 - 언리얼엔진 기초

[39강] FireBall Overlap Event

whereareyoung 2024. 7. 24. 00:09

이번시간에는 다음 두가지를 구현할 예정이다. 

1. Static Mesh 면 폭발하고 불을 없애기 

2. 캐릭터 자료형에는 폭파를 하고 없애기 

 

그리고 다음시간에 2번에 이어 캐릭터 자료형에 불이 붙게 만드는 것을 구현 예정이다. 

 

Static Mesh 면 폭발하고 불을 없애기 

1. Outliner > Walls 에 Collision Overlap을 켜 준다. 

양쪽 다 Collision Overlap 이 되어 있어야 충돌이 된다. 

(BP_FireBall은 켜져있는 상태이다)

 

2. BP_FireBall > 이벤트그래프 다음과 같이 세팅하여 충돌 체크를 해 준다. 

* 특정 오브젝트를 찾아내는 방법에는 세가지가 있다, 이번에는 이름으로 찾아내는 방법을 사용할예정이다. 

1) 이름을 이용하여 찾아내기 

2) 태그를 이용하여 찾아내기 

3) 자료형을 이용하여 찾아내기 

 

충돌을 할 경우에 폭발 파티클을 생성할 예정이다.

 

3. 콘텐츠 > Explosion > "Fire_Exp_03" > "P_Explosion" Rename 후 다음 빨간 박스 안 파일 Effect 폴더로 이동

 

비어있는 Explosion 폴더는 삭제 해 준다. 

 

4. 콘텐츠 > Effects > P_Explosion 복제 및 다음과 같이 설정

1) Ex_Smoke 비활성화 

 

2) Ex_CoreBasic, Ex_CoreBasic2 > Initialsize 에서 Y 값 15 > 10 

 

그리고 다음 비활성화 

 

3)  BP_FireBall > 이벤트그래프 > OnComponentOverlap (Sphere) 다음과 같이 세팅해 준다. 

 

플레이하여보면 기능은 정상적으로 구현되었으나 대각선으로 쏠 때 다음과 같은 버그가 있다. 차후에 쉐이더 작업을 진행해야 되기 때문에 일단 넘어가도록 하겠다. 

 

캐릭터 자료형에 폭파를 하고 없애기

먼저, 데미지 들어가게 설정을 해 준다. 

1. BP_Sword > 이벤트 그래프 > 빨간 체크박스 copy 

적한테 충돌해서 주는건 칼이랑 똑같기 때문에 기존에 만들어 두었던 노드를 이용해 준다.

 

2. BP_FireBall > 이벤트 그래프 > Float 형 변수 "Power" 생성 

 

3. 다음과 같이 False 일때 Branch 로 연결하여 준다. 

 

4. Other Actor 를 끌어와 다음 두 가지를 연결하여 준다. 

 

5. 변수 Power 새로 제작한 것으로 대체하여 준다. 

 

데미지 구현이 정상적으로 되는 것을 확인할 수 있다. 

 

적에게 닿았을때 폭발시키는 효과 구현 

1. "P_Explosion1" 복제하여 "P_Explosion2" 생성, EX_CoreBasic, Ex_CoreBasic2 를 제외하고 다 비활성화 

2. BP_FireBall > 이벤트 그래프 

위와 같이 세팅 

 

3. 노드정리 

보기 복잡하여 혼동스러우니 다음과 같이 정리하여 준다. 

 

4. BP_FireBall > 이벤트 그래프 > 플레이 될 이펙트 크기를 다음과 같이 세팅하여 준다. (0.5, 0.5, 1.0)

 

다음시간에는 두가지를 진행할 예정이다. 기대가 된다! 

- 칼을 빼는 중에 마법모드로 전환되는 버그를 해결

- 마법공격에 피격된 적에 불이 붙는것

'Unreal Engine > 게임클래스 - 언리얼엔진 기초' 카테고리의 다른 글

[41강] Inherit Weapon Diagram  (0) 2024.07.26
[40강] Attach Particle System  (0) 2024.07.25
[38강] Projectile  (0) 2024.07.16
[37강] Wizard & Sword Mode  (0) 2024.07.16
[36강] Wizard & Sword Mode  (0) 2024.07.11