MetaSounds 에디터와 노드
MetaSounds 에디터 인터페이스와 핵심 노드 라이브러리를 마스터합니다
MetaSounds 에디터 인터페이스
그래프 에디터의 구성과 워크플로우
MetaSounds 에디터는 Blueprint 에디터와 유사한 노드 기반 인터페이스를 제공합니다. Content Browser에서 MetaSound Source 또는 Patch를 더블 클릭하면 에디터가 열립니다.
에디터 패널 구성
| 패널 | 위치 | 역할 |
|---|---|---|
| Graph Editor | 중앙 | 노드 배치 및 연결, DSP 그래프 구성의 메인 캔버스 |
| Members | 좌측 | Input/Output 정의, 그래프 변수, 참조된 Patch 목록 |
| Details | 우측 | 선택된 노드의 프로퍼티, 기본값, 메타데이터 편집 |
| Palette | 우측 탭 | 사용 가능한 전체 노드 목록 (검색 및 드래그 지원) |
| Analyzer | 하단 | 실시간 오디오 파형 시각화, 스펙트럼 분석 |
우클릭: 노드 검색 및 추가 | Ctrl+드래그: 와이어 재연결 | Space: 미리듣기 재생/정지 | C: 코멘트 박스 생성
필수 Input/Output 노드
MetaSound Source에는 반드시 다음 노드가 필요합니다:
소스 노드 (Generator)
오디오 신호를 생성하는 핵심 노드들
Wave Player
Sound Wave 에셋을 재생하는 가장 기본적인 소스 노드입니다. Mono, Stereo, 서라운드 버전이 별도로 존재합니다.
| 입력 핀 | 타입 | 설명 |
|---|---|---|
| Play | Trigger | 재생 시작 트리거 |
| Stop | Trigger | 재생 정지 트리거 |
| Wave Asset | WaveAsset | 재생할 Sound Wave |
| Start Time | Time | 재생 시작 시간 (초) |
| Pitch Shift | Float | 피치 배수 (1.0 = 원본, 2.0 = 한 옥타브 위) |
| Loop | Bool | 루프 재생 여부 |
오실레이터 노드
Wave 파일 없이 실시간으로 오디오 신호를 합성하는 노드입니다.
| 노드 | 파형 | 주요 용도 |
|---|---|---|
| Sine | 사인파 | 순수 톤, FM 합성 캐리어/모듈레이터 |
| Saw | 톱니파 | 풍성한 하모닉스, 리드 사운드 |
| Square | 사각파 | 8비트 스타일, 서브베이스 |
| Triangle | 삼각파 | 부드러운 톤, 서브 오실레이터 |
| Noise | 화이트/핑크 노이즈 | 바람, 물소리 합성, 필터 테스트 |
| LFO | 저주파 오실레이터 | 비브라토, 트레몰로, 페이저 이펙트 |
| WaveTable Oscillator | 웨이브테이블 | 커스텀 파형, 고급 합성 |
Sound Cue에는 오실레이터가 존재하지 않습니다. Sound Cue는 오직 미리 녹음된 Wave 파일만 재생할 수 있습니다. MetaSounds만이 런타임에 오디오를 합성할 수 있으며, 이것이 "프로시저럴 오디오"의 핵심입니다.
프로세싱 노드
필터, 엔벨로프, 이펙트 등 신호 처리 노드
엔벨로프 (Envelope)
시간에 따른 값의 변화를 정의합니다. 사운드의 시작(Attack)과 소멸(Decay/Release)을 제어합니다.
| 노드 | 파라미터 | 설명 |
|---|---|---|
| AD Envelope | Attack Time, Decay Time, Attack Curve, Decay Curve | 트리거 시 Attack-Decay 엔벨로프 생성 |
| ADSR Envelope | Attack, Decay, Sustain, Release | 전통적인 ADSR 엔벨로프 (키보드 스타일) |
| Envelope Follower | Attack Time, Release Time | 입력 오디오의 볼륨 엔벨로프를 추출 |
필터 (Filter)
| 노드 | 동작 | 주요 파라미터 |
|---|---|---|
| Biquad Filter | 다목적 필터 (LP, HP, BP, Notch) | Cutoff Frequency, Q Factor, Filter Type |
| One-Pole Low Pass | 부드러운 고역 감쇠 | Cutoff Frequency |
| One-Pole High Pass | 저역 차단 (DC 제거) | Cutoff Frequency |
| Ladder Filter | 아날로그 스타일 래더 필터 | Cutoff, Resonance |
| State Variable Filter | LP/HP/BP 동시 출력 | Cutoff, Resonance |
이펙트 (Effects)
| 노드 | 효과 |
|---|---|
| Delay | 시간 지연 이펙트 |
| Flanger | 플랜저 (짧은 딜레이 변조) |
| Chorus | 코러스 (복수 딜레이 변조) |
| Stereo Delay | 스테레오 딜레이 (좌우 독립) |
| Compressor / Limiter | 다이나믹 레인지 제어 |
| Distortion | 디스토션 / 오버드라이브 |
| Ring Modulation | 링 모듈레이션 (두 신호의 곱) |
유틸리티와 흐름 제어 노드
수학, 트리거, 라우팅, 변환 노드
트리거 유틸리티
| 노드 | 기능 |
|---|---|
| Trigger Repeat | 주어진 주기로 트리거를 반복 발생 |
| Trigger Counter | 트리거 발생 횟수 카운팅 |
| Trigger Any / All | 여러 트리거를 OR / AND 결합 |
| Trigger Delay | 트리거를 지정 시간만큼 지연 |
| Trigger Route | 조건에 따라 트리거를 다른 경로로 라우팅 |
수학 노드
| 카테고리 | 주요 노드 | 데이터 타입 |
|---|---|---|
| 사칙연산 | Add, Subtract, Multiply, Divide | Audio, Float, Int |
| 비교 | Greater Than, Less Than, Equal | Float, Int → Bool |
| 범위 | Clamp, Map Range, Lerp | Float |
| 변환 | MIDI to Frequency, Frequency to MIDI, dB to Linear | Float |
| 랜덤 | Random Float, Random Int | Float, Int |
실전 예시: 랜덤 변형 발자국 사운드
MetaSounds는 Wave Asset Array를 입력으로 받아 Random Get으로 랜덤 선택할 수 있습니다. Sound Cue의 Random 노드와 동일한 기능이지만, 피치/볼륨 변조까지 샘플 정확도로 동작합니다.
핵심 요약
- MetaSounds 에디터는 Graph Editor, Members, Details, Palette, Analyzer 패널로 구성된다
- Wave Player는 가장 기본적인 소스 노드이며, 오실레이터로 실시간 합성도 가능하다
- AD/ADSR Envelope으로 사운드의 시작과 소멸을 제어할 수 있다
- Biquad Filter, Ladder Filter 등으로 주파수 필터링을 적용한다
- 트리거 유틸리티(Repeat, Counter, Delay)로 복잡한 실행 흐름을 구성할 수 있다
- 수학 노드와 Random 노드를 결합하여 매번 다른 변형의 사운드를 생성할 수 있다
도전 과제
배운 내용을 직접 실습해보세요
MetaSound 에디터에서 다음 노드들을 조합하세요: Oscillator(Sine/Saw), ADSR Envelope, LFO, Filter(LowPass). 오실레이터의 출력을 ADSR로 감싸고, LFO로 필터 Cutoff를 모듈레이션하는 신디사이저 패치를 만드세요.
MetaSound Patch 에셋을 만들어 재사용 가능한 오디오 모듈(예: 리버브 + 딜레이 이펙트 체인)을 구성하세요. 이 Patch를 여러 MetaSound Source에서 참조하여 모듈식 오디오 설계의 장점을 체험하세요.
C++에서 Metasound::FNodeFacade를 상속받아 커스텀 MetaSound 노드를 구현하세요. 입력 오디오 신호에 비트크러셔(Bit Depth Reduction) 이펙트를 적용하는 커스텀 DSP 노드를 만들고 에디터에서 사용해보세요.