
4주차 강의에서 한 퍼즐게임의 로직을 완성했다면, 5주차 강의에서는 게임 시작시에 로고가 뜨는 Splash Image 만들기, 효과음이나 BGM을 삽입하는 법 같은 게임을 꾸미는 법을 학습하였다.
밑의 이미지는 강의자료가 아닌, 배운 내용을 응용해보기 위해 스스로 재구성하고, 캡쳐한 이미지이다.
1. Splash Image 삽입하기
Splash Image는 상단 메뉴바의 Edit에 있는 Project Setting에서 들어간다.


프로젝트 세팅에서 "Player" 항목 에서 사진과 같은 Splash Image를 찾을 수 있다.
기본적으로 무료버전의 유니티에서는 유니티 엔진의 Splash Image는 무조건 뜨게 되어 있다.


Splash Image를 띄워지는 형식은 2가지 종류가 있는데, 유니티 로고 밑에 같이 나오는 형식과,
(Unity Logo Below)



각각의 Splash Image가 따로 생성되는 방식이 있다.
(All Sequential)
간혹 Splash Image가 의도한 대로 나오지 않고 왜곡되어 표시되는 경우도 있는데, 이 때는 이미지의 Mesh Type을 Full Rect로 바꿔주면 된다.

2. 효과음 삽입하는 법 Audio Source
유니티에서 소리가 나게 하는데는 Audio Source 컴포넌트가 필요하다.
따라서 소리가 나는 기능이 있는 오브젝트에 Audio Source 컴포넌트를 삽입해야한다.


만약 Audio Source를 추가한다면, Main Camera 오브젝트에 Audio Listener라는 컴포넌트가 자동으로 추가된다.

특정 상황에 따라 효과음이 나오게 하고 싶다면, 스크립트를 통해 제어할 수 있다.
해당 오브젝트의 스크립트에서 AudioSource 컴포넌트를 받아오고,
나오게 할 효과음을 AudioClip으로서 받아온다.


그리고 효과음이 필요한 함수에서, audioSource.PlayOneShot(해당 오디오클립) 을 이용한다.
PlayOneShot()은 해당 효과음을 어떤 일이 있어도 한번만 재생하겠다는 의미이며,
빠르게 여러번 작동시켜도 소리가 겹치지 않게 한다.

특정 상황에서 재생되는 효과음과 달리, 배경음악은 대게, 지속적으로 흘러나오는 오디오이다.
GameManager 오브젝트를 만드는 것과 같이 AudioManager를 만들고, AudioManager 스크립트를 만든다.
스크립트에는 다음와 같이 적는다

효과음때와 마찬가지로 Audio Source 컴포넌트를 받고,
클립을 오디오 소스에 삽입하고, 이번엔 Play로 실행한다.

AudioManager 오브젝트에는 Audio Source 컴포넌트와 AudioManager 스크립트 둘을 적용한다.
스크립트 컴포넌트에 적절한 Clip을 적용하는 것을 잊지 않는다.
위 방식대로 하면 AudioManager 오브젝트가 있는 Scene에서 배경음악을 재생할 수 있다.
하지만 게임 시작했을 때 나오는 Scene과 게임을 플레이하는 Scene을 따로 두고,
게임 시작했을 때 나온 배경음악을, 게임 플레이할 때도 계속 나오도록 원할 수도 있다.

상기 이미지와 같이 구현할 경우,
해당 AudioManager는 기본적으로 Scene이 넘어가도 파괴되지 않으며,
만약 다른 씬에 같은 AudioManager가 있다면, 그 AudioManager를 파괴하여, 배경음악이 겹쳐서 들리는 것을 방지할 수 있다.



게임을 실행할 경우, StartScene의 AudioManager가 DontDestroyOnLoad에 들어간 것을 확인할 수 있으며

MainScene으로 이동하더라도, StartScene의 AudioManager가 유지가 되며, MainScene의 AudioManager가 사라진 것을 확인할 수 있다.
---
'내일배움캠프 TIL' 카테고리의 다른 글
| 내일배움캠프 6일차 TIL "C#의 자료형, 변수, 연산자" (0) | 2024.09.19 |
|---|---|
| 내일배움캠프 5일차 TIL "게임을 빌드하는 법" (0) | 2024.09.13 |
| 내일배움캠프 3일차 TIL "반복문, 배열" (0) | 2024.09.11 |
| 내일배움캠프 2일차 TIL "보다 심화적인 내용으로" (0) | 2024.09.10 |
| 내일배움캠프 1일차 TIL "유니티 사용 기본" (0) | 2024.09.09 |