UE4 Chapter 7. 사운드 : 버튼 사운드, BGM, 이펙트 사운드
카테고리: UE4 Lesson 1
태그: UE4 Game Engine
인프런에 있는 황대희님의 언리얼 엔진4 3D 횡스크롤 게임 만들기 강의를 듣고 정리한 필기입니다. 😀
언리얼 엔진 공식 문서 https://docs.unrealengine.com/ko/index.html
🚖 프로젝트에 사운드 임포트 하기
Epic Games Launcher 를 실행한 후, ‘학습(Learn)’ 에서 “전략 게임(Strategy Game)” 클릭. 다운 받고 프로젝트를 연 후 📂Sounds 폴더만 우리 프로젝트로 이주시켰다. 우클 - 이주(Migration)
🚖 버튼 사운드
지난 시간에 메인 메뉴 레벨로 갈 수 있는 투명 버튼을 만들었었다. 해당 버튼을 누르면 사운드가 재생될 수 있도록 히자.
인트로 버튼 클릭시 사운드 작업
🚩 “Intro” 위젯 블루프린트 디자이너 모드
위와 같은 방법으로 할 수도 있지만 이렇게 안할 것이다. 사운드를 재생하려는 버튼 위젯을 클릭한 상태에서 디테일 - Appearance - Style - Pressed Sound 에서 재생할 사운드 파일을 할당할 수 있다. 그러나 여기서 설정하면 버튼을 클릭했을 때 레벨이 “Main Menu”로 넘어가면서 사운드가 재생되다가 말게 된다. 즉 사운드 재생이 되다가 새로운 레벨이 열리면서 끊겨 버리므로 부자연스럽다. 따라서 아래와 같은 방식으로 할 것이다.
🚩 “Intro” 위젯 블루프린트 이벤트 그래프
버튼을 누르면 해당 사운드를 재생시키고 2 초 정도 지연시간을 가져서 사운드가 끝까지 재생되고 메인 메뉴 레벨로 넘어가게 하였다. 이러면 새로운 레벨이 열리면서 기존에 재생되던 사운드가 끊길 일이 없다. Play Sound 2D 노드는 거리를 고려하지 않고 사운드를 재생한다. 보통 그냥 UI 에서는 Play Sound 2D 로 사운드를 플레이한다.
사운드 재생 지연 시간동안 페이드아웃 효과 애니메이션
🚩 “Intro” 위젯 블루프린트 디자이너 모드
배경 이미지에 “Background_FadeOut”이라는 이름의 애니메이션을 만들었다. 0 초땐 불투명하고 2 초땐 알파값이 0으로 투명하게 만들어 주어 0~2초 동안 점점 투명해지는 애니메이션을 만들었다.
🚩 “Intro” 위젯 블루프린트 이벤트 그래프
애니메이션도 같이 재생
🚖 BGM 사운드
무료 제공 사이트에서 다운 받기
https://www.purple-planet.com/
Purple Planet 이라는 사이트에서 무료로 분위기에 맞는 BGM 들을 다운받을 수 있다.
mp3 포맷을 wav 포맷으로 바꾸기
언리얼 엔진은
wav
포맷만 지원한다.mp3
파일이라면wav
로 변환해주어야 사용이 가능하다.
https://www.audacityteam.org/ 사이트에 들어가면 wav
에서 mp3
로 변환해주는 프로그램인 Audacity 를 다운로드 받을 수 있음
변환하고자 하는 사운드 파일을 로컬에서 부터 이 빈공간으로 그대로 드래그 해준다.
이렇게 잘 불러와진 것을 볼 수 있다.
wav
로 Expot 해주고 이를 내 언리얼 프로젝트 콘텐츠 브라우저로 드래그 해서 Import 해주면 끝 !!
Ambient Sound
Main Menu
레벨과Stage 1,2,3,4,5
레벨의 배경 음악으로 사용할 것- 레벨 블루프린트로 재생시킬 수도 있지만
Ambient Sound
액터로 배경 음악을 재생시켜 볼 것이다.
Ambient Sound
- 👉 사운드를 재생시키는 역할을 하며 레벨 내에 배치할 수 있는 액터다.
- 때문에 게임 세계 내에서 이
Ambient Sound
액터와 가까울수록 더욱 크게 들리고 멀수록 작게 들린다. 사운드가 거리에 부합하게 된다.
- 때문에 게임 세계 내에서 이
Main Menu
레벨을 열고 Ambient Sound
사운드 액터를 원하는 위치에 배치시킨다.
- 디테일 패널 - Sound - Sound 에 임포트 했던 원하는
wav
사운드 파일을 할당해준다. - 볼륨은 Volume Multiplier 에서 조절할 수 있다.
Stage
레벨들의 배경 음악도 Ambient Sound
를 배치해 위와 같은 방식으로 지정해준다.
사운드 큐
어떤 오디오 파일의 사운드 큐
를 만들면 해당 오디오 파일은 작성한 사운드 큐에 의해 재생 작동 방식이 정해진다. 이렇게 원본 사운드 자체를 내가 원하는 재생 방식으로 지정할 수 있다.
해당 오디오 파일을 내가 원하는 방식으로 재생되게 하고 싶다면 이렇게 해당 오디오 파일의 사운드 큐를 만들어 주면 된다.
🚩 오디오 파일 사운드 큐
메인 메뉴 배경음악으로 쓸 오디오 파일, 스테이지 배경 음악으로 쓸 오디오 파일. 이렇게 둘 다 Wave Player 노드를 클릭한 후 디테일 패널에서 Looping에 체크해주면 이 원본 오디오 파일을 재생시킬 땐 언제나 루프로 재생하게 된다.
Main Menu
레벨의Ambient Sound
사운드 액터의 Sound 를 원본 파일이 아닌 루프가 적용 된 사운드 큐로 바꿔준다.Stage
레벨의Ambient Sound
사운드 액터의 Sound 를 원본 파일이 아닌 루프가 적용 된 사운드 큐로 바꿔준다.
🚖 이펙트 사운드
걸을 때 사운드
🚩 “sword_and_shield_run” 달리기 애니메이션 파일
- 애니메이션에서 발이 닫는 지점마다 걷기 이펙트 사운드를 재생시킬 노티파이를 추가하자.
- 왼발, 오른발이 닿는 지점에 사운드를 재생시키는
Play Sound
노티파이를 추가하자. - 추가한 노티파이를 클릭한 후 디테일 패널 - Sound 에 해당 노티파이가 발생할 때 재생할 사운드 파일 할당해주기.
- 왼발, 오른발이 닿는 지점에 사운드를 재생시키는
몬스터가 맞을 때 사운드
🚩 “DefaultMosterBP” 몬스터 블루프린트 이벤트 그래프
몬스터가 맞으면 색깔이 변하는 이벤트인 ChageColor
커스텀 이벤트가 발생하면 몬스터가 맞을 때 사운드를 재생하도록 Play Sound 2D 노드를 추가하였다. 해당 사운드 파일도 할당해주었다.
🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄
댓글남기기