리소스 찾느라 날려먹은 시간을 제외하고 오디오 매니저 구현 완료를 위해 빠르게 달렸다.
우선 중점으로 두고 개발한 것은
1. 효과음이 한 번에 여러개가 재생돼도 간섭하지 않도록 한다. => 채널을 여러개 둠
2. 오디오 리소스는 오디오 매니저가 갖고있는다.
사실 구글링좀 해보다가 좋은 코드를 봐버려서 모른 체 할 수도 없고,,많은 부분을 가져다 쓴 것 같다.
private AudioSource[] sfxPlayers;
우선 이렇게 효과음을 재생시킬 AudioSource(채널)을 배열로 해서 다중 재생이 가능하도록 한다.
public void SFXPlay(SFX sfx) //SFX는 열거형이다.
{
for(int i = 0; i < sfxPlayers.Length; ++i)
{
int loop = (i + sfxChannelIndex) % sfxPlayers.Length;
if (sfxPlayers[loop].isPlaying)
continue;
sfxChannelIndex = loop;
sfxPlayers[loop].clip = sfxClips[(int)sfx];
sfxPlayers[loop].Play();
break;
}
}
전체 채널을 돌면서 현재 가리키는 채널이 무언가 재생중이면 continue하며 쓰지 않는 채널을 찾는다.
쓰지 않는 채널의 오디오 클립에 열거형에 맞는 클립을 할당해주고 재생시킨다.
<푸념이 담긴 나의 일기>
오늘 활동 시간의 절반은 리소스 찾는데 사용했다.
재미라도 있었다면 좋은 시간이었겠지만,, 별 소득도 없고, 비슷하면서 다른 "띠롱..띠롱.." 소리를 몇백개를 듣는 괴로운 시간이었다.
그리고 유니티 에셋 스토어에 올라온 음원들은 왜 웹 상에서 소리 조절이 안되는걸까?
고막을 찢으려 안간힘을 내는 이어폰을 내던지며 한숨을 쉬었다..
겨우겨우 좀 어울리는 배경음과 효과음을 찾았지만 무료 리소스들은 역시 맘에 안든다.
혹시나 해서 유료 리소스를 찾아보니 좋은게 정말로 많더라.. SciFi 장르의 배경음도 정말 좋은 곡이 많았다.
"$99"를 보고 못본 척 하기로 했다.
이런 능력자는 또 처음보고 너무 감사해서 오히려 티나는 감사표현을 못드린 것 같다.
건네주신 본인의 유튜브 계정을 들어가보니 우리 게임에 너무나 찰떡인 곡도 들을 수 있었다.
현재 진행된 것을 보면 비주얼도 굉장한 것이,, 최종 결과물이 기대된다.