새로운 Impacter 플러그인 알아보기

게임 오디오 / 상호작용 오디오 / 사운드 디자인

개요

Impacter(임팩터)는 기존의 SoundSeed Impact 플러그인을 영감으로 하는 새로운 음원 플러그인입니다. 이 플러그인은 '타격음' 사운드 파일을 저작 도구로 로드해서 분석하고 합성 모델로 저장할 수 있게 해줍니다. 그런 다음 이 런타임 플러그인은 원본 사운드를 재구성해서 직관적이며 물리적 정보를 받는 매개 변수와 교차 합성에 의해 제어되는 좀 더 흥미로운 변형음을 만들어낼 수 있습니다.

Subscribe

Impacter_1

질량(mass), 속도(velocity), 위치(position) 매개 변수는 소리를 만들어내는 타격 오브젝트의 크기, 타격의 세기, 어디가 타격을 받는지에 대한 음향적 반응의 작동 방식을 각각 모델링합니다. 또한 각 매개 변수는 랜덤화될 수 있습니다. 

교차 합성을 관리하기 위해서 여러 사운드 파일을 로드할 수 있으며, 플러그인은 서로 다른 사운드의 '타격음(impact)'과 뼈대(body) 요소를 랜덤으로 조합합니다 (아래 더 자세히 설명). 각 파일의 타격음이나 뼈대를 랜덤 선택란에서 각각 포함하거나 제외해서 사운드 디자이너가 원하는 특정 조합을 만들어낼 수 있습니다.

작업 과정은 첫 번째 Impact 플러그인과 비슷하지만 몇 가지 사항이 개선되었습니다. Wwise 저작 도구가 백그라운드에서 오디오 분석을 처리하기 때문에 플러그인에서 외부 분석 도구가 더 이상 필요하지 않습니다. 원본 Impact에서도 교차 합성 조합이 가능했지만 사운드가 불안정하고 게인이 크게 변경될 위험이 있었습니다. 반면, Impacter는 어떤 교차 합성 조합에서도 안정적입니다. 또한 UI도 여러 사운드를 작업하기가 더 쉽도록 개선되었으며, 심지어 일부 상황에서는 연장된 랜덤 컨테이너처럼 작동하도록 랜덤 재생 선택을 활용하기도 합니다. 그뿐만 아니라 매개 변수도 다뤄지는 사운드에 대해 물리적으로 더욱 의미 있고 직관적이도록 신중히 설계되었습니다.

계기

Impacter의 개발은 압축된 오디오에서 창의적인 사운드 변형을 적용하는 방법을 모색하는 연구에서 시작되었습니다. 조작하기에 광범위하면서 일반적으로 유용한 오디오 표현을 만들어내는 것은 꽤나 어려운 일이었습니다. 유연성이 더 좋을수록 풍부하게 변형하는 것이 더 어려워지는 경우가 많기 때문이었죠. 

하지만 특정 영역의 사운드에 집중함으로써 더욱 표현력있는 사운드 변환을 제공할 수 있게 되었습니다. 물리적으로 직관적인 매개 변수에 의해 제어되는 타격 종류의 사운드는 저희가 첫 번째로 선택하기에 가장 적합했습니다. 사운드 디자이너에게 음향(소리 전달의 물리)의 작동 방식의 창의적 제어를 제공해 주는 공간 음향에 대한 저희 작업과 더불어, 저희는 사운드 디자이너가 충돌과 같은 물리적 사건 의해 생성되는 사운드도 비슷한 방식으로 작업할 수 있게 해주는 신시사이저를 생각해 봤습니다. 

완전히 처음부터 합성하는 것이 아니라 기존의 사운드 재료를 사용해서 작업할 수 있다는 점에서 참신한 도구가 되기를 바랍니다. 이 방식을 통해서 여러분이 가장 좋아하는 폴리 녹음에 게임 물리 종류의 변형을 적용할 수 있죠! 또한 대부분의 훌륭한 샘플 라이브러리와 녹음이 한 그룹으로 된 타격음을 제공하지 않으며 발자국, 총알, 충돌 등에 활용할 수 있는 작업 과정을 개발하는 것이 아주 중요하다는 것도 충분히 알았습니다. 교차 합성은 사운드 디자이너가 이러한 타격음을 함께 사용하고 그것들 사이의 변형음을 탐험해볼 수 있는 유용한 방법입니다.

정의

Impacter를 더 자세하게 설명해드리기 전에 이 플러그인의 기본 알고리즘이 작동하는 방식에 관한 몇몇 정의와 개념을 설명해드리면 좋을 것 같습니다: 

음원-필터 모델(source-filter model)은 필터를 통해 전달되는 자극(excitation) 음원 신호를 기반으로 한 음원 합성 모델입니다. 언어나 음성은 보통 음원과 필터를 사용하여 모델링됩니다. 필터(성대)를 사용하여 성문파 자극(glottal pulse, 성대를 통과하는 공기)가 모음 소리를 형성하게 되죠. 그리고 Linear Predictive Coding(선형 예측 코딩)과 같이 입력 신호를 필터와 잔류 신호로 분해하는 고전적 분석 방법도 있습니다. 

그림 1. 음원 스펙트럼과 이를 형성하는 필터 함수의 예시. 음원 스펙트럼은 성문파 자극과 상응하며 필터 함수의 모양은 성대의 모양과 상응합니다. (이미지를 전체 크기로 보려면 새로운 탭에서 열어주세요.)

imageLikeEmbed imageLikeEmbed (1) imageLikeEmbed (2)

주파수 와핑(frequency warping)은 주파수 영역(스펙트럼)에서 균일하지 않은 비율을 말합니다. 선형 비율에서 주파수를 가져와서 다른 비율에 따라 이를 재분배해서 종종 스펙트럼에서 보다 낮은 부분을 0에 가깝게 압축하고 보다 높은 부분은 나머지 공간을 채우도록 늘입니다 (혹은 그 반대). 와핑은 여러 정현파 모음의 주파수 혹은 주파수 영역의 곡선에 해당하는 필터의 계수에 직접 적용할 수 있습니다.

그림 2. Impacter에서 사용되는 일반적인 필터 반응이 와핑에 의해 형성되는 예시. (이미지를 전체 크기로 보려면 새로운 탭에서 열어주세요.)

unnamed Graph2 graph3

간단하게 말하자면 서로 물리적 재질에서의 다른 음향 모드 활성화는 서로 다른 주파수의 에너지 존재와 상응한다고 할 수도 있습니다. Impacter와 같은 합성 알고리즘의 경우, 각 필터 대역의 위치와 게인 및 합성 알고리즘 안의 정현파 모음이 영향을 받습니다. 물리학을 생각하며 만든 저희 음향 모드는, 자극을 받는(타격을 받는) 재질이 표면에서 타격을 받는 위치에 따라 활성화되는 모드를 가진다는 것을 직관으로 합니다. 예를 들어 표면의 중앙이 타격을 받을 경우 사용 가능한 최소한의 음향 모드가 활성화되는 반면, 모서리 근처가 타격을 받을 경우 더 많은 모드가 활성화되죠. 이 작동 방식의 매개 변수 제어의 경우 아래서 볼 수 있듯이 보통 표면의 중앙에서의 거리를 모델링하는 것만으로 충분합니다. 단순화된 모델에서는 중앙에서 동일한 거리의 원 주위 부분은 동일한 예상 음향 작동 방식을 가지게 됩니다. Impacter에서 위치 매개 변수가 작동하는 방식이 이해가 되기를 바랍니다. 

그뿐만 아니라 오브젝트의 크기는 안에 담긴 음향 모드의 개수와 연관성이 있습니다. 오브젝트가 더 클수록 더 많고 낮은 주파수의 음향 모드를 포함하며, 서로 다른 위치에서 자극을 받을 경우 더 높은 밀도의 스펙트럼을 만들어낼 수 있습니다. 보통 저희는 크기의 증가를 새로운 낮은 주파수 모드가 타격음의 기본 주파수를 변경함에 따른 피치의 저하로 인지합니다. 연구 [1]은 와핑이 스펙트럼의 하단에서 모드의 밀도 증가를 재현하지만, 합성된 알고리즘에 의해 생성되는 고정된 양의 모드에 대해 재현함으로써 오브젝트의 크기 변경을 유용하게 예측해 준다는 것을 보여줍니다. 그래서 더 많은 모드를 합성하기 위한 알고리즘 없이 크기 변경 효과를 모델링하는 유용한 방법이 되죠.

합성 & 분석

Impacter의 합성 알고리즘은 정현파적 모델과 음원 필터 모델의 조합을 기반으로 합니다 다시 말해 원본 입력 사운드가 여러 정현파와 필터 뱅크를 통과하는 자극 신호를 사용하여 런타임 때 재구성되죠. 개념적으로 말해 저희는 음원 필터 구성 요소에서의 자극 신호는 Impacter의 '타격음(impact)' 구성 요소와 연결하며, 음원 필터 모델의 필터 뱅크와 정현파를 '뼈대(body)' 구성 요소와 연결합니다.

Impacter 저작 플러그인의 내부 분석은 두 단계의 알고리즘을 기반으로 합니다. 먼저 정현파적 합성 모델을 위해 주파수와 엔벨로프 정보를 추출한 다음, 음원 필터 합성 모델에 사용할 필터 뱅크와 잔류 자극을 추출하죠.

첫 번째 단계인 '좁은 대역(narrow band)' 분석은 입력 사운드 스펙트럼에서의 피크 선택을 실행하여 타격음에서 가장 공명적인 주파수를 찾아냅니다. 이 공명 피크가 사운드에서 필터링되어 첫 번째 잔류를 만들어내면, 이 주파수와 엔벨로프 정보가 정현파적 합성 모델의 매개 변수로 저장됩니다. 그런 다음 좁은 대역 잔류는 잔류 스펙트럼을 사용하여 음원 필터 모델에 사용할 필터 뱅크를 설계하는 '넓은 대역(wide band)' 단계로 전달됩니다. 최종 자극 신호는 잔류와 필터 뱅크를 분리함으로써 생성됩니다.

그림 3. Impacter에 사용되는 내부 분석과 합성 처리 과정 시스템 다이어그램.

ImpactSystem1

재합성

저작 도구에서 분석 알고리즘이 하는 모든 작업은 게임 런타임 도중 실행할 합성 알고리즘이 최대한 작업을 덜 하도록 여러 정현파와 자극 신호를 4차 결합 필터로 통과시켜 믹싱하는 것입니다. FFT가 필요하지 않죠! 그리고 걱정 마세요. 원본 입력 사운드는 완벽하게 재구성되기 때문에 입력 사운드에서 누락되는 부분은 하나도 없습니다. 

변형

이 하이브리드 합성 모델은 여러 다른 변형을 제공하여 합성 도중 사운드의 음색을 개별적으로 혹은 함께 형성할 수 있게 해줍니다. 

  1. 필터 뱅크의 계수와 각 정현파의 주파수는 타격음의 음색과 인지되는 피치를 불균일하게 변경하도록 와핑될 수 있습니다.

  2. 자극 신호는 필터 뱅크의 스펙트럼 모양이나 정현파의 위치에 상관없이 다시 샘플링(피치 위아래로 변조)될 수 있습니다.

  3. 각 정현파의 엔벨로프는 다시 샘플링된 자극 신호의 길이와 대응하거나 타격음의 공명음을 더욱 분리시키기 위해 늘이거나 완충할 수 있습니다. 

  4. 특정 정현파와 필터 대역을 선택적으로 켜거나 꺼서 세부성을 직관적으로 제어하거나, 심지어 위치에 관한 음향 모드의 자극 모델링을 매핑할 수도 있습니다.

  5. 각 정현파에는 FM(주파수 변조, Frequency Modulation)을 적용할 수 있습니다. 연구를 통해 타격음의 거칠기의 지각적인 효과를 제어하는 데에 사용할 수 있는 FM 매개 변수의 매핑을 확인할 수 있었습니다. [2]

사운드 예시

변형 1, 2, 3은 모두 Impacter의 질량(mass) 매개 변수에 의해 제어됩니다. 

질량(Mass)

Mass.mp3

4는 속도(velocity)와 위치(position) 제어를 제공하기 위해 다른 방식으로 사용되었습니다. 

속도(Velocity)

Velocity.mp3

0~1 범위의 위치 매개 변수는 Impacted 표면의 중앙으로부터 반경 거리와 같이 작동합니다. 

위치(Position)

Position.mp3

마지막으로 5는 거칠기(roughness) 매개 변수의 기초였습니다.

거칠기(Roughness)

Roughness.mp3

교차 합성

Impacter 플러그인에서는 여러 사운드 파일 음원을 로드하고 합성할 수 있으며, 하이브리드 정현파적 음원 필터 모델은 각 음원으로부터 서로 다른 모델 컴포넌트를 교차 합성할 수 있습니다. 합성 모델의 컴포넌트를 조합할 수 있는 방법은 다양하지만, 한 파일의 자극 - '타격음(impact)'이 다른 파일의 필터 뱅크와 정현파 - '골격(body)과 조합했을 때 가장 성공적으로 교차 합성된다는 것을 알 수 있었습니다. 그렇기 때문에 Impacter의 UI는 이 방식으로 타격음과 골격을 선택할 수 있게 해줍니다.  

현명한 조언 (Wwisdom)

경고: 부적절한 소리를 조합할 경우 좁은 대역 피크가 타격음 스펙트럼과 거의 겹치지 않거나 타격음에 필터 뱅크에 의해 강조될 수 있는 스펙트럼 에너지가 없기 때문에 타격음에서 분리된 정현파가 울릴 수 있습니다. 교차 합성은 비슷한 그룹의 사운드를 바꿀 때 가장 잘 작동하는 것 같습니다. 폴리 세션을 통해 얻은 n 개의 발자국 소리를 매개 변수를 변경하기 전에 n2개의 마이크로 변형음으로 재빨리 연장할 수 있죠.

결론 및 사용법

Impacter는 게임 오디오에서 사운드를 설계하는 새로운 실험적 방법을 제공하기 위해 제작되었습니다. 특정 종류의 사운드(타격음)에 집중함으로써 여러 방법으로 사용할 수 있는 플러그인을 제작할 수 있었습니다. 변형음이 필요한 사운드 그룹의 경우, 교차 합성으로 인한 순열 랜덤 선택과 Impact의 내부 매개 변수 랜덤화를 통해 연장된 랜덤 컨테이너와 같은 작동 방식을 사용할 수 있습니다. 디자이너가 게임 내 물리(충돌, 속도, 크기)에 의해 변경되는 RTPC와 이벤트에 접근할 수 있을 경우, 폴리 사운드에 있는 물리적 정보를 받는 변형으로 직관적으로 매핑할 수 있습니다. 

사용자분들이 실험하거나 프로토타입에 사용할 수 있도록 Impacter를 제공해드리고 있지만, 저희는 엔지니어링과 QA에도 확신이 있습니다. Impacter는 삐걱거림 없이 여러분의 저작 작업 과정에 매끄럽게 들어맞아야 하며, 게임 런타임에서 합성 알고리즘이 가볍고 안정적이기 때문에 메모리나 CPU 예산을 벗어나지 않을 것입니다.

Subscribe

참조 및 참고 사항

[1] - Penttinen, Henri, Aki Härmä, and Matti Karjalainen. "Digital guitar body mode modulation with one driving parameter." Proceedings of the DAFx-00 Conference, Verona, Italy, December. 2000.
[2] - Aramaki, Mitsuko, et al. "Controlling the perceived material in an impact sound synthesizer." IEEE Transactions on Audio, Speech, and Language Processing 19.2 (2010): 301-314.

라이언 돈 (RYAN DONE)

소프트웨어 개발자

Valve corporation

라이언 돈 (RYAN DONE)

소프트웨어 개발자

Valve corporation

라이언은 2017년 Audiokinetic에서 일하기 위해 서부에서 몬트리올로 이사했습니다. 컴퓨터 음악 연구 및 오디오 소프트웨어 개발 분야에서 일한 경험이 있는 그는, R&D 팀에서 Wwise의 새로운 플러그인과 DSP 기능을 즐겁게 연구하고 있습니다. 라이언은 모든 종류의 실험적이고 '이상한' 음악에 대한 열렬한 팬이며, 참신한 이유를 어떻게서든 찾아내어 매일 자전거를 끌고 나갈 정도로 자전거 타기에 푹 빠져 있습니다.

댓글

댓글 달기

이메일 주소는 공개되지 않습니다.

다른 글

제 1부 - 니어 : 오토마타(NieR:Automata)의 공간 음향과 Wwise로 구현한 다양한 게임 플레이 유형

니어 : 오토마타는 외계 침략자들이 인류를 달에 추방한 후 황무지가 된 지구에서 펼쳐지는 액션 롤플레잉 게임 (RPG)입니다. 이 게임은 인류가 지구를 되찾기 위해 개발한...

11.9.2019 - 작성자: PlatinumGames Inc. (플래티넘 게임즈)

AI를 활용한 Pagan Online의 다이얼로그(대화) 관리 개선

오디오 프로그래밍 / 게임 오디오 / 사운드 디자인 니콜라 루키치 (NIKOLA LUKIĆ) 우리는 인공지능의 연구개발이 상당한 추진력을 얻고 있는 시대에 살고 있습니다....

24.3.2020 - 작성자: 니콜라 루키치 (NIKOLA LUKIĆ)

Wwise State-based Mixing의 새로운 기능 - 온갖 파라미터들!

2017.1 이전에는 States 탭에서는 볼륨, 피치, 저역-통과 필터, 하이패스 필터 및 메이크업 게인과 같은 비교적 적은 수의 파라미터에만 액세스할 수...

9.6.2020 - 작성자: Bradley Meyer

사운드 디자이너가 PureData + Heavy를 사용하여 DSP 플러그인을 개발하는 법 - 제 2부

제 1부에서는 Patch 파일을 사용하여 '블루프린트'를 제작하는 법을 설명해 드렸습니다. 이제 Heavy 컴파일러를 사용하여 '자동 워크숍'을 제작한 후, 이 자동 워크숍을...

24.11.2020 - 작성자: 천종 호우 (Chenzhong Hou)

게임 사운드 보관 | 제 1부: 기본 지식

게임 업계에서 사운드 보관은 상당히 민감한 부분입니다. 데모씬과 레트로 게임에 각별한 애정이 있든, 혹은 최신 도구와 엔진으로 작업하는 사운드 전문가이든 (아니면 옛날 사운드에 푹...

9.9.2021 - 작성자: 파니 러비야르 (Fanny REBILLARD)

상호작용 음악: '여러분이 직접 선택하는 모험' 스타일의 발라드

2018년 크라우드 펀딩 캠페인을 성공적으로 마친 inXile Entertainment(인엑사일 엔터테인먼트)는 '웨이스트 랜드 3(Wasteland 3)' 게임의 본격적인 제작에...

23.5.2023 - 작성자: Alexander Brandon (알렉산더 브랜드)

다른 글

제 1부 - 니어 : 오토마타(NieR:Automata)의 공간 음향과 Wwise로 구현한 다양한 게임 플레이 유형

니어 : 오토마타는 외계 침략자들이 인류를 달에 추방한 후 황무지가 된 지구에서 펼쳐지는 액션 롤플레잉 게임 (RPG)입니다. 이 게임은 인류가 지구를 되찾기 위해 개발한...

AI를 활용한 Pagan Online의 다이얼로그(대화) 관리 개선

오디오 프로그래밍 / 게임 오디오 / 사운드 디자인 니콜라 루키치 (NIKOLA LUKIĆ) 우리는 인공지능의 연구개발이 상당한 추진력을 얻고 있는 시대에 살고 있습니다....

Wwise State-based Mixing의 새로운 기능 - 온갖 파라미터들!

2017.1 이전에는 States 탭에서는 볼륨, 피치, 저역-통과 필터, 하이패스 필터 및 메이크업 게인과 같은 비교적 적은 수의 파라미터에만 액세스할 수...