메시 또는 텍스처와 마찬가지로 오디오 파일 에셋 워크플로는 문제 없이 매끄럽게 실행되도록 설계되어 있습니다. Unity는 일반적인 파일 포맷 대부분을 불러올 수 있지만 오디오 파일 작업을 할 때 주의해야 할 몇 가지 세부 사항이 있습니다.
Unity 5.0 부터는 오디오 데이터가 실제 AudioClips으로부터 분리되어 있습니다. AudioClips는 단순히 오디오 데이터를 포함한 파일을 참조할 뿐이고 클립이 런타임 시점에 로드되는 방식을 결정하는 AudioClip 임포터 내에 다양한 옵션 조합이 있습니다. 즉, 다른 에셋의 경우에는 요청 시에만 로드될 수도 있고 플레이어가 단계별로(음성, 배경음악, 앰비언트 루프 등) 게임을 진행하면서 점진적으로 로드될 수도 있는 반면, 메모리에 어떤 오디오 에셋을 항시적으로 유지할지를 결정할 수 있는 대단히 큰 유연성이 생깁니다(발소리나 무기 및 충격 등의 오디오가 얼마나 자주, 얼마나 빨리 재생될지 예측할 수 없는 경우도 있기 때문입니다).
오디오가 Unity에 인코딩되어 있을 때 디스크에 저장하는 방법 중 메인 옵션은 PCM, ADPCM 또는 Compressed 입니다. 여러 가지 플랫폼에 특화된 형식이 있지만 실행되는 방식은 비슷합니다. Unity는 오디오 임포트에서 가장 일반적인 형식을 지원하며(아래 리스트 참고), 프로젝트에 추가되면 오디오 파일을 임포트합니다. 기본 모드는 Compressed 이며 스탠드얼론 또는 모바일 플랫폼에 쓰이는 Vorbis/MP3로 오디오 데이터가 압축됩니다.
압축 형식과 오디오 데이터를 인코딩할 때 사용 가능한 다른 옵션에 대한 자세한 설명은 오디오 클립 문서를 참고하십시오.
Unity에 임포트된 오디오 파일은 오디오 클립(Audio Clip) 인스턴스로 스크립트에서 사용 가능하며 오디오 시스템의 게임 런타임이 인코딩된 오디오 데이터에 접근할 수 있는 경로를 제공합니다. 게임은 실제 오디오 데이터가 로드되기 전에 오디오 클립을 통해 오디오 데이터에 대한 메타 정보에 접근할 수 있습니다. 임포트 프로세스가 인코딩된 오디오 데이터로부터 길이나 채널 카운트 및 샘플 레이트 등 다양한 비트 정보를 추출해 내어 AudioClip에 저장하기 때문에 가능합니다. 예를 들어, 뮤직 엔진이 데이터를 실제로 로딩하기 전에 재생 편성을 위해 길이 정보를 사용할 수 있기 때문에 자동 다이얼로그나 뮤직 시퀀싱 시스템을 생성할 때 유용할 수 있습니다. 한 번에 필요한 메모리에 오디오 클립을 유지하여 메모리 사용을 줄이는 데에도 도움이 됩니다.
포맷 | 확장명 |
---|---|
MPEG layer 3 | .mp3 |
Ogg Vorbis | .ogg |
Microsoft Wave | .wav |
FLAC(Free Lossless Audio Codec) | .flac |
Audio Interchange File Format | .aiff / .aif |
Ultimate Soundtracker module | .mod |
Impulse Tracker module | .it |
Scream Tracker module | .s3m |
FastTracker 2 module | .xm |
Unity 사운드 활용에 대한 자세한 내용은 오디오 개요를 참고하십시오.