BGM 재생하기
Cavas 프리팸을 편집모드로 연후 인스펙트뷰의 Audio source 컴포넌트를 추가합니다.
Audio Source 폴더의 AudioClip에 프로젝트 뷰의 BGM_game_00을 드래그 앤 드롭합니다. 이때 Play On Awake와 Loop를 체크합니다. 이제 게임을 시작함과 동시에 BGM_game_00이 반복해서 재생됩니다.
스크립트로 사운드 재생및 정지시키기
게임을 클리어 했을때와 게임 오버일때 game_BGM_00을 멈추고 다른 사운드를 플레이합니다.
GameManager스크립트에 해당기능을 추가합니다.
변수
게임오버 클리어용 오디오클립 참조 변수를 마련합니다.
// +++ 사운드 재생 추가 +++
public AudioClip meGameOver; // 게임 오버
public AudioClip meGameClear; // 게임 클리어
Update()
오디오 컨트롤을 위해서 Audiosource컴포넌트를 이용합니다.
AudioSource soundPlayer = GetComponent<AudioSource>();
정지를 위해서 Stop(), 한번 플레이를 위해서 PlayOneShot()메서드를 이용합니다.
soundPlayer.Stop();
soundPlayer.PlayOneShot(meGameClear);
Update()변경부분
void Update()
{
if (PlayerController.gameState == "gameclear")
{
// 게임 클리어
~중략
// +++ 사운드 재생 추가 +++
// 사운드 재생
AudioSource soundPlayer = GetComponent<AudioSource>();
if (soundPlayer != null)
{
// BGM 정지
soundPlayer.Stop(); soundPlayer.PlayOneShot(meGameClear);
}
// +++ 플레어이 조작 +++
inputUI.SetActive(false); // 조작 UI 숨기기
}
else if (PlayerController.gameState == "gameover")
{
// 게임 오버
~중략
// +++ 사운드 재생 추가 +++
// 사운드 재생
AudioSource soundPlayer = GetComponent<AudioSource>();
if (soundPlayer != null)
{
// BGM 정지
soundPlayer.Stop();
soundPlayer.PlayOneShot(meGameOver);
}
// +++ 플레어이 조작 +++
inputUI.SetActive(false); // 조작 UI 숨기기
}
스크립트를 캔버스 프리팹에 어태치하고 오디오 클립2개를 연결해줍니다.
'유니티2D게임 > 게임에 장치 추가' 카테고리의 다른 글
7.6 마우스및 터치 패널 조작 구현하기 (0) | 2023.05.20 |
---|---|
7.5 돌아다니는 적 캐릭터 만들기 (0) | 2023.05.20 |
고정 포대 만들기 (0) | 2023.05.19 |
7.3 이동블록과 연동되는 스위치 만들기 (0) | 2023.05.19 |
이동 블록 만들기 (0) | 2023.05.19 |