Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

공hannah부

CJ UNIT 7기 게임TF #6(급식실 게임 - BGM) 본문

프로젝트/CJ UNIT 7기 게임TF

CJ UNIT 7기 게임TF #6(급식실 게임 - BGM)

Hannah0226 2022. 11. 25. 20:27

이 게임은 !리듬게임! 이기에 BGM을 넣어줘야 한다. 

BGM은 BGM Factory에서 구독권을 구매해 다운받았다(CJ UNIT 최고!!)

노래는 이 노래로 결정! 급식실 분기위와 잘 어울릴 것 같아 결정했다

https://www.bgmfactory.com/ko/music/track/17859

 

그래 결심했어

가장 안전한 배경음악 IP BGM팩토리, 매월 500곡 이상 추가되는 BGM팩토리 자체제작 음원 3만 1천 여 곡을 무제한으로 사용해 보세요!

www.bgmfactory.com

 

오늘의 내용

- 게임이 시작되면 음악 실행시키기

- 음악이 끝나면 결과창 보이기

 

StartBGM

게임이 시작되면 노래 실행시키기

- 처음에 Start함수에서 노래를 바로 실행시키니까 학생들이 급식을 받으러 오는 타이밍과 노래 타이밍이 맞지 않았다. 이에 노래를 게임이 시작하고 1초뒤 실행시키기로 하였다.

- Invoke("MusicStart",1); 를 사용해주면 1초뒤 MusicStart 함수가 실행된다.

AudioSource myAudio;
Result theResult;
bool musicStart = false;

private void Start()
{
	myAudio = GetComponent<AudioSource>();
	theResult = FindObjectOfType<Result>();
	Invoke("MusicStart",1);
}

 

노래를 실행해주는 MusicStart 함수

- false였던 musicStart 변수를 true로 바꿔주어 Update함수에서 노래가 시작됐는지 확인할 수 있게 해준다.

void MusicStart()
{
	myAudio.Play();
	musicStart = true;
}

 

노래가 끝나면 결과창 띄우기

- if-else문을 사용해 노래가 play중이면 넘기고 play중이 아니면 결과창을 띄어준다.

- 노래 실행 전 1초동안은 play중이 아니라고 인식되기 때문에 이를 방지하고자 musicStart 변수가 true일 때 if-else문을 실행시킨다.

void Update()
{
	if(musicStart)
	{
		if (myAudio.isPlaying)
		{
    
		}
		else
		{
			//결과창 띄우기
		}
	}
}

 

실행 영상

노래가 학생 타이밍에 맞게 정상적으로 실행된다!