Git : https://github.com/CatDarkGame/PMBFootStepSound

 

CatDarkGame/PMBFootStepSound

Physical Material Based Foot Step Sound. Contribute to CatDarkGame/PMBFootStepSound development by creating an account on GitHub.

github.com


PMB Foot Step Sound 소개

Anim Notify만 달아주면 자동으로 바닥 재질을 인식해서 재질에 맞는 사운드를 출력하는 기능을 구현했습니다.

 

C++로 구현했으며 클래스는 총 2개 입니다.

 

Notify클래스로 내부에서 LineTrace를 이용해서 Physical Material를 검출하고 사운드를 출력합니다.

 

 

일명 리소스클래스로 해당 클래스를 상속받는 블루프린트 클래스를 제작하여 사운드와 재질명칭을 입력합니다.

 

 


Physical Material 생성, 세팅

콘텐츠 브라우저 -> 신규추가 -> 피직스 -> 피지컬 머티리얼(Physical Material)을 각 재질별로 생성합니다.

 

마테리얼 에디터를 킨다음 해당 마테리얼에 맞는 피지컬 마테리얼을 설정합니다.

 

월드에 있는 Static Mesh에 해당 마테리얼을 입힙니다.

 

 


사운드 오브젝트 설정

콘텐츠 브라우저 -> 신규추가 -> 블루프린트 클래스로 우측 창을 연다음 "Res_PMBFootStepSoundList"를 부모클래스로 선택하여 블루프린트를 생성합니다.

 

리스트에 이전에 설정&세팅한 Physical Material 이름을 동일하게 입력합니다, 이 이름을 통해 재질 String검사해서 맞는 사운드를 출력합니다.

우측에는 해당 재질에 맞는 사운드 에셋을 설정합니다.

 

 


애니메이션 Notify 설정

발자국이 나는 애니메이션 설정을 켜봅시다.

(걷기, 뛰기, 점프 등)

 

 

Notify 바에서 애니메이션 발걸음에 맞춰 Play PMBFootStep Sound 노티파이를 추가합니다.

(노티파이 바에서 우측마우스 클릭하면 추가 할 수 있습니다.)

 

 

추가한 노티파이를 클릭하면 우측 디테일패널에 설정 할 수 있는 옵션들이 등장합니다.

 

PMB Sound List 아까 만든 사운드 리스트 블루프린트를 넣습니다.
M F Volume Multiplier 사운드 볼륨값입니다.
M F Pitch Multiplier 사운드 피치 값입니다, 피치가 높으면 소리가 얇아지고 낮으면 두꺼워집니다.
M B Sound Attach 사운드 파일에 감쇠(Attenuation) 설정이 되어있으면 감쇠효과가 일어납니다.
M V Location Offset LineTrace실행할 위치 값 Offset입니다, 기본값은 ZeroVector지만 Socket 설정하면 해당 Socket이 기본값이 됩니다.
M F Check Distance LineTrace 실행할 거리 값입니다, 보통 10~100정도로 맞춥니다.
Socket Name LineTrace를 실행할 Socket & Bone이름입니다, 발걸음이니 발 Bone 이름을 넣어주면 됩니다.
M B Show Debug Line 체크하면 LineTrace 디버그 라인을 출력합니다, Line Trace가 정확한 좌표에서 실행되는지 확인 할 수 있습니다.
Notify Color 노티파이 바 색깔입니다.

 


WRITTEN BY
CatDarkGame
Technical Artist dhwlgn12@gmail.com

,