<aside>
<img src="/icons/cassette_gray.svg" alt="/icons/cassette_gray.svg" width="40px" /> Audio Source
wav 파일이나 mp3 파일을 재생시키는 컴포넌트
⇒ 카세트 같은 것
</aside>
<aside>
<img src="/icons/credit-card_gray.svg" alt="/icons/credit-card_gray.svg" width="40px" /> Editor
- Play On Awake
- 게임이 시작하자마자 오디오를 재생시킬지 여부를 정한다.
- Loop
- Putch
- Volume
- 3D Sound Settings
- Min Distance
- 이 컴포넌트가 붙은 오브젝트를 기준으로 하여 Min Distance 내에서는 최고 음량을 유지한다.
- 이 컴포넌트가 붙은 오브젝트를 기준으로 하여 Min Distance를 벗어나면 서서히 음량이 감소한다.
- Max Distance
- 이 컴포넌트가 붙은 오브젝트를 기준으로 하여 Max Distance 내에서는 서서히 음량이 감소한다.
- 이 컴포넌트가 붙은 오브젝트를 기준으로 하여 Max Distance를 벗어나면 소리가 완전히 들리지 않는다.
- 디버그 모드
- Pan Level Custom Curve
-
1에 가까운 커브일 수록 3D로 소리를 재생한다.
⇒ 가까이 있을수록 크게, 멀리 있을수록 작게
-
0에 까가운 커브일 수록 2D로 소리를 재생한다.
⇒ 거리에 따른 볼륨 차별화가 없다.
</aside>
<aside>
<img src="/icons/gear_gray.svg" alt="/icons/gear_gray.svg" width="40px" /> Function
-
Play
public void Play(ulong delay = 0);
- 클립을 재생한다. 단 인수를 필요로 하지 않으므로 미리 Clip에 재생시킬 클립이 할당 되어있어야 한다.
- 소리를 중첩시키지 않기 때문에 이미 재생중이었던 소리는 중지시킨 후 자신의 클립을 재생시킨다.
-
PlayOneShot
public void PlayOneShot(AudioClip clip, float volumeScale = 1.0f);
- 클립을 1회 재생한다. 단 Play()와는 다르게 재생시킬 Clip을 인수로 받는다.
- Play()와는 다르게 소리를 중첩해서 재생할 수 있다. 이미 재생 중이었던 소리를 중지시키지 않은 채로 자신의 클립을 같이 그 위에 재생시킨다.
- 던져지는 개념이라 Play()와 달리 중간에 멈출 수 없다. 한번 던져지면 재생기 Audio Source가 비활성화 되는게 아닌 이상 끝까지 재생된다.
-
PlayClipAtPoint
public static void PlayClipAtPoint(AudioClip clip, Vector3 position, float volume = 1.0f);
- 거리에 따라 사운드가 달라야 하는 경우에는 그 오브젝트가 소리의 진원지가 될 수 있도록 오브젝트에 Audio Source를 붙여야 한다.
- 반드시 Audio Source를 달고 있는 오브젝트에서만 소리가 나야하는것이 아닌 다른 좌표에서도 소리를 재생할 수 있다.
</aside>
<aside>
<img src="/icons/headphones_gray.svg" alt="/icons/headphones_gray.svg" width="40px" /> Audio Listner
- 소리를 듣는 컴포넌트이다.
- 한 Scene 안에 하나만 있으면 된다. 이것이 있어야 소리를 들을 수 있다.
</aside>
<aside>
<img src="/icons/exclamation-mark_gray.svg" alt="/icons/exclamation-mark_gray.svg" width="40px" /> 오디오 클립 설정 Tip
- import한 오디오 클립은 2개의 채널로 이루어져 있다. [스테레오]. 그러나 음향 효과를 극대화한 게임이 아니라면 모노 [소리의 방향을 구별하지 않는다.]로 변환하는 것을 추천한다.
⇒ 스테레오 사운드는 용량 부족과 성능 저하의 원인이 될 수 있다.
- raw 파일 음원은 용량이 크다. wav 파일은 용량이 크지만 바로 출력할 수 있기에 실행속도가 빠르다. mp3파일은 용량이 작지만 압축 해제 후 출력되기에 실행속도가 상대적으로 느리다 [딜레이 발생]
- wav파일 : 즉시 출력돼야 하는 효과음에 사용
- mp3파일 : 약간의 딜레이가 허용되는 인물의 대사나 배경음악에 사용
- 배경음악이나 환경음은 대부분 용량이 크기에 실행시 미리 압축을 풀어서 메모리에 보관할 경우 가용 메모리가 줄어든다. 따라서 용량이 큰 음원은 다음과 같은 import설정을 권장한다.
- Streaming + Vorbis
- Compressed in Memory + Vobis + Quality[70%]
- 오디오의 발생 빈도나 오디오 파일의크기에 따라서는 다음과 같은 import 설정을 권장한다.
- 자주 발생하며 파일 크기가 적은 경우
Decompress On Load + PCM[or ADPCM]
- 자주 발생하며 파일 크기가 중간인 경우
Compressed in Memory + ADPCM
- 가끔 발생하며 파일 크기가 작은 경우
Compressed in Memory + ADPCM
- 가끔 발생하며 파일 크기가 중간인 경우
Compressed in Memory + Vorbis
</aside>