Unreal

[Unreal] 4월 30일 수업정리

k-codestudy 2025. 4. 30. 13:46

이팩트에 관련된 수업을 들었다.

 

자료구조를 사용하여 걸을 때 이펙트 이벤트 발생

BP_ThridPerson
  • 변수 m-footStepEffect 선언 ( 자료형 : 맵, 인티저  / Niagara Syetem의 오브젝트 래퍼런스 )  
함수 ( e-FootStepEffectAdd )
  • 함수 ( e-FootStepEffectAdd ) 생성 후 입력에서 Effect 선언 ( Niagara System 오브젝트 레퍼런스 )
e-FootStepEffectAdd 내부 find를 2번 하는 방식 ( 어쩔수 없는 부분 )
  • e-FootStepEffectAdd 함수
  • m-footStepEffect에서 find를 한 후 로컬 변수 Count (인티저)를 하나 선언 후 연결 
  • Count에 ++를 연결해 주고  m-foot step Effect에서 Add를 불러와 연결해 주면 된다.
  • 즉, Find해서 있다면 Count를 ++ 한 후 Add에 연결
BP_ThirdPerson 블루 프린트
  • 1, 2, 3을 누르게 되면 E-Foot Step Effect Add 호출 ( 각 이펙트는 알아서 설정 )
  • 4번을 누르게 되면 M-Foot Step Effect의 Keys값을 얻어오고 for문으로 연결 한 후 각각 M-Foot Step Effect ( 고유 번호 ), Get Display Name ( 고유 이름 )을 Print String으로 호출
실행
E-Foot Step Effect Remove 함수
  • m-footStepEffect에서 find를 한 후 로컬 변수 Count (인티저)를 하나 선언 후 연결
  • Count에 --를 연결해 주고 0보다 크거가 같다면 이라는 조건을 설정
  • True라면 m-footStepEffect에 remove, false라면 m-footStepEffect에 Add 설정
  • 1,2 번은 Add 3번은 Remove를 연결 ( Effect의 경우 1 == 3 번 )
실행
 

Notify 생성 ( FootStepFx )
received Notify에서 함수 bone 선언 ( 네임 )
BP_ThirdPerson 블루 프린트

  • 커스텀 이밴트 (e-renderFootFx) 생성 후 입력에서 bone 선언 ( 네임 )
  • m-Foot Step Effect에서 Keys, bone에서 get Sockect Location을 불러온다
  • for Each Loop문을 호출 후 spawn System at Location을 호출해 연결해 주면 된다.

FootStepFx

  • Mesh comp에서 get Owner를 호출 후 BP_ThirdPerson 형변환 후 e-renderFootFx 호출 호 bone을 넣어준다.
MF_RUN_FWD 애니메이션 시퀀스
  • 노티파이 트랙 추가한 후 오른발 타이밍에 맞게 FootStepFx 호출
  • bone에 스켈레탈 오른발의 이름을 적어 준 후 실행 
실행 ( 나오게 하는 설정은 알아서 )

 

영역설정

Box collisoin 추가 후 오버랩, 앤드 오버랩해서 형변환 떄리고 이벤트 호출 ,Effect는 변수로 승격하여 밖에서 설정 가능하게 인스턴스 편집가능 On

실행