사운드 클래스(Sound Class) 는 언리얼 엔진 에서 오디오 엔진을 위해 사용되는 에셋 타입으로, 이를 사용하여 여러 사운드를 그룹화하여 관련된 사운드 웨이브의 파라미터를 한번에 변경할 수 있습니다.
사운드 클래스 믹스(Sound Class Mixes) 를 사용하면 게임플레이 중에도 여러 사운드 클래스 파라미터를 조정할 수 있습니다.
새 사운드 클래스를 구성하려면 콘텐츠 브라우저(Content Browser) 를 우클릭하고 사운드(Sounds) > 클래스(Classes) > 사운드 클래스 를 선택합니다.
그런 다음 '콘텐츠 브라우저'에서 사운드 클래스를 더블클릭하여 해당 사운드 클래스의 디테일(Details) 패널을 엽니다.
일반 프로퍼티
사운드 클래스의 첫 번째 파라미터 세트는 '일반(General)' 프로퍼티입니다.
볼륨(Volume): 클래스 내 각 사운드의 크기에 대한 멀티플라이어입니다. 사운드 웨이브 오브젝트 자체의 볼륨 세팅 위에서 동작합니다.
피치(Pitch): 클래스에서 각 사운드의 피치에 대한 멀티플라이어로, 사운드 웨이브 오브젝트의 피치 세팅 위에서 동작합니다.
로우 패스 필터 주파수(Low Pass Filter Frequency): 로우 패스 필터에 대한 어테뉴에이션 주파수로, 클래스 내 모든 사운드에 영향을 미치며 20,000 이상의 값은 사운드 웨이브에 아무런 영향도 미치지지 않습니다.
어테뉴에이션 거리 스케일(Attenuation Distance Scale): 클래스 내 각 사운드의 어테뉴에이션 거리를 스케일 조절하여 동적으로 어테뉴에이션 세팅을 조정할 수 있도록 합니다.
항상 재생(Always Play): 활성화된 경우 사운드 클래스 내 사운드가 항상(Always) 보다 낮은 우선순위의 사운드로 인해 보이스 풀에서 추출되지 않도록 합니다.
자손 클래스
자손 클래스(Child Classes) 로 설정된 다른 클래스를 가질 수 있는 사운드 클래스입니다.
자손 클래스를 추가하려면 자손 클래스 옆에 있는 + 아이콘을 클릭하여 드롭다운에서 선택하거나, 사운드 클래스를 그래프로 드래그하고 부모 클래스 노드의 자손(Children) 출력 핀을 자손 클래스 노드의 입력 핀에 연결합니다.
사운드 클래스가 자손으로 설정되어 있고Inherited 로 설정되어 있는 경우(로딩 참고)에는 부모 클래스에서 피치, 볼륨, 로딩 비헤이비어를 상속합니다. 이 방식을 통해 부모와 그 모든 자손 클래스의 세팅을 동시에 변경할 수 있습니다.
패시브 사운드 믹스 모디파이어
사운드 클래스에는 해당 사운드 클래스에 포함된 사운드가 재생될 때 자동으로 트리거되는 사운드 클래스 믹스(Sound Class Mixes) 배열이 어태치될 수 있습니다. 이러한 배열은 수동으로 활성화될 필요가 없기 때문에 패시브 라고 불립니다.
예를 들어 이들 배열은 명시적인 Push Sound Mix Modifier 명령이 없이도 사운드 클래스의 멤버만 재생되면 트리거할 수 있습니다. 이때 원하는 경우 Push 명령을 통해 사운드 믹스 모디파이어를 호출할 수 있으며, 여러 사운드 클래스 또는 블루프린트가 동일한 사운드 믹스 모디파이어를 참조할 수 있습니다.
각 패시브 사운드 믹스 모디파이어에는 파라미터 볼륨에 대한 최소 볼륨 한계치(Min Volume Threshold) 및 최대 볼륨 한계치(Max Volume Threshold) 를 지정하여 활성 시점을 제어할 수 있습니다. 예를 들어 이를 통해 멀리 있어서 거의 들리지 않을 정도로 조용히 어테뉴에이션된 볼륨이 사운드 믹스 모디파이어를 트리거하는 것을 방지할 수 있습니다.
사운드 디자이너는 이 기능을 사용하여 블루프린트 트리거를 무더기로 추가할 필요 없이 사운드 클래스의 EQ 및 관련된 볼륨에 복잡한 비헤이비어를 생성할 수 있습니다.
라우팅
'라우팅(Routing)' 탭에 포함되어 있는 세팅은 사운드 클래스 오디오가 서라운드 사운드 구성을 고려하여 디렉셔널 채널을 통해 라우팅되는 방식을 제어합니다.
LFE 블리드(LFE Bleed): LFE(Low Frequency Effects), 즉 저주파수 이펙트 채널로 전송해야 하는 신호의 비율입니다. 디폴트는 .5 또는 50%입니다.
보이스 센터 채널 볼륨(Voice Center Channel Volume): 중앙 채널로 전송해야 하는 신호의 비율입니다. 멀티플라이어가 아니며 해당 값은 자손에게 상속되지 않습니다.
중앙 채널만(Center Channel Only): 활성화된 경우 사운드는 중앙 채널로만 전송됩니다.
앰비언트 볼륨 적용(Apply Ambient Volume): 활성화된 경우 사운드 클래스 내 사운드는 인테리어/익스테리어 볼륨 및 로우 패스 필터 세팅과 같은 오디오 볼륨 내 앰비언트 존 세팅에 영향을 받게 됩니다.
레거시
'레거시(Legacy)' 탭에는 오디오 믹서 기능이 언리얼 오디오 엔진에 추가되기 이전에 생성된 세팅이 포함됩니다.
출력 타깃(Output Target): 사운드 클래스 내 사운드가 메인 스피커, 외부 컨트롤러 또는 컨트롤러로 전달될지 여부를 변경합니다. 컨트롤러가 없는 경우에는 스피커로 재생됩니다.
라디오 필터 볼륨(Radio Filter Volume): 사운드 클래스 내 사운드에 적용되는 라디오 필터 이펙트의 볼륨입니다. XAudio2 백엔드를 갖춘 Xbox 및 Windows에서 사용할 수 있습니다.
라디오 필터 볼륨 한계치(Radio Filter Volume Threshold): 라디오 필터가 작동하는 볼륨입니다. XAudio2 백엔드를 갖춘 Xbox 및 Windows에서 사용할 수 있습니다.
마스터 EQ 서브믹스에 출력(Output to Master EQ Submix): 활성화된 경우 오디오 믹서 리버브 시스템이 대체하기 전에 사용되던 리버브 시스템으로 사운드 클래스의 출력 내 사운드를 전송합니다. 오디오 믹서에서는 여전히 이 세팅을 고려합니다.
UI 사운드 여부(Is UISound): 활성화된 경우 사운드 클래스 내 사운드가 UI 메뉴 및 일반 게임플레이 중에 들릴 수 있게 됩니다. 오디오 믹서에서는 여전히 이 세팅을 고려합니다.
음악 여부(Is Music): 활성화된 경우 해당 사운드는 음악으로 마킹됩니다.
서브믹스
사운드 클래스 내 사운드는 서브믹스(Submix) 로 전송될 수 있으며, 여기서는 여러 사운드 타입을 서브믹스 이펙트로 한 번에 처리할 수 있습니다.
마스터 리버브로 전송(Send to Master Reverb Submix): 활성화된 경우 주요 리버브 세팅이 사운드 클래스 내 사운드에 적용됩니다.
디폴트 2D 리버브 전송량(Default 2D Reverb Send Amount) 공간화되지 않은 사운드에 배치되는 리버브 이펙트의 디폴트 양입니다.
디폴트 서브믹스(Default Submix): 사운드 클래스 내 사운드 출력이 기본적으로 전송되는 서브믹스입니다. 없음(None) 으로 설정된 경우 출력은 '프로젝트 세팅(Project Settings)'에서 지정된 사운드 클래스 디폴트 서브믹스로 전송됩니다.
모듈레이션
오디오 모듈레이션 플러그인이 설치되어 있는 경우 '모듈레이션; 세팅의 배열을 사운드 클래스 내 모든 사운드에 추가할 수 있습니다.
로딩
'로딩(Loading)' 세팅은 압축된 오디오 데이터가 로드되는 방식을 제어합니다.
Inherited: 이 옵션으로 설정된 경우 사운드 클래스는 부모 사운드 클래스에서 로딩 비헤이비어를 상속합니다.
Retain on Load: 사운드 클래스 내 사운드에 대한 첫 번째 오디오 청크는 명시적으로 삭제될 때까지 캐시에 남습니다.
Prime on Load: 사운드 클래스 내 사운드는 로드된 후 캐시에 남지만, 오랫동안 사용하지 않을 경우 다른 오디오를 위한 공간을 확보하기 위해 제거될 수도 있습니다.
Load on Demand: 이 오디오 청크는 에셋이 재생되거나 준비될 때까지 저장되지 않습니다.
Force Inline: 사운드 클래스 내 사운드가 비스트리밍 디코딩 경로만 사용하도록 강제하며, 오디오의 일부도 캐시에 저장되지 않습니다. 각 사운드 웨이브 에셋의 로딩 비헤이비어 오버라이드도 Force Inline으로 설정되어야 합니다.