Audio Component

AudioListener : 소리를 듣는 역할

❗️ 한 Scene에서 여러대의 카메라를 사용시 반드시 AudioListener는 하나만 존재 해야 한다


AudioSource : 소리를 발생

Basic Settings

  1. Audio Clip: 이 AudioSource가 재생할 오디오 클립을 선택합니다.
  2. Mute: 오디오를 음소거합니다.
  3. Bypass Effects: 이 AudioSource에 적용된 오디오 이펙트를 무시합니다.
  4. Bypass Listener Effects: 오디오 리스너에 적용된 이펙트를 무시합니다.
  5. Bypass Reverb Zones: 리버브 존의 영향을 무시합니다.
  6. Play On Awake: 게임 오브젝트가 활성화될 때 자동으로 오디오 재생을 시작합니다.
  7. Loop: 오디오 클립이 끝나면 처음부터 다시 재생합니다.

Output Settings

  1. Priority: 오디오 소스의 우선순위입니다. 낮은 값은 높은 우선순위를 의미합니다.
  2. Volume: 이 AudioSource의 볼륨을 조절합니다.
  3. Pitch: 이 AudioSource의 피치를 조절합니다.

3D Sound Settings

  1. Stereo Pan: 스테레오 채널 간의 밸런스를 조정합니다.
  2. Spatial Blend: 2D와 3D 사운드 간의 블렌딩을 조정합니다.
  3. Reverb Zone Mix: 리버브 존과의 블렌딩을 조절합니다.
  4. Doppler Level: 도플러 효과의 정도를 설정합니다.

Advanced Settings

  1. Min Distance / Max Distance: 오디오가 어떻게 거리에 따라 감쇠할지를 설정합니다.
  2. Rolloff Mode: 거리에 따른 볼륨 감쇠를 어떻게 처리할지 선택합니다 (Linear, Logarithmic 등).

AudioClip (음원)

Load Type - enum

Decompress On Load (Defalult)
  • 실행과 동시에 압축을 해제하므로 큰 사이즈의 오디오 파일은 성능상 오버헤드를 발생
  • 작은 사이즈의 오디오에 적합
  • 압축이 미리 해제된 상태에서 저장되기 때문에 많은 메모리 사용
  • CPU 리소스는 덜 소모하는 타입
    Compressed In Memory
  • 메모리에 압축된 상태로 저장
  • 실행시 압축을 해제하므로 약간의 오버헤드 발생
  • 큰 사이즈의 오디오에 적합
    Streaming
  • Persistent 메모리 (HDD, Flash Driver)에 저장된 오디오를 스트리밍 방식으로 재생
  • 오디오 파일을 저장하기 위한 메모리가 필요 없다

Compression Format - enum

PCM
  • 품질이 높은 대신 파일의 크기는 상대적으로 크기 때문에 짧은 오디오에 적합(비압축 포맷)
    ADPCM
  • 압축비가 PCM 대비 3.5배 파일의 크기가 작음
  • CPU 리소스를 조금더 사용함
  • 노이즈가 포함
  • 총, 발걸음, 잡음이 일부로 필요한 오디오에 적합
    Vorbis / MP3 (Defualt)
  • 중간 길이 정도의 효과음 또는 배경음악에 적합
  • PCM대비 품질은 떨어지지만, 압축률(Quality) 조절 가능
  • 보통 압축률은 70% 설정

Audio Setting Example

목적 Load Type Compression Format Quality
큰사이즈의 배경음 Streaming Vobis
배경음 Compressed In Memory Vorbis 70%
발생 빈도 파일 크기 Load Type Compression Format
빈번히 발생 작은 크기 Decompess On Load PCM or ADPCM
빈번히 발생 중간 크기 Compressed In Memory ADPCM
가끔 발생 작은 크기 Compressed In Memory ADPCM
가끔 발생 중간 크기 Compressed In Memory Vorbis

Preload Audio Data - bool

  • LoadScene 시에 미리 Audio를 Load
  • 만약 fasle 상태이면 Scene 시작시 레이턴시 발생 할 수 있음