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

사운드 디자인 / Wwise에 대한 팁과 도구

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

brad1.png

 

2017.2를 기준으로, 거의 모든 조정 가능한 파라미터는 States를 통해 제어될 수 있습니다. 이러한 파라미터에 액세스하려면 Properties Editor의 Status 탭에서 Properties 버튼을 클릭하여 State Properties 대화 상자를 띄웁니다. 여기서 States 내에서 제어하려는 속성을 클릭합니다. 보시다시피, 그 목록은 상당히 많아졌습니다!

 

brad2.png

 

박스를 체크하여 속성을 추가하면 해당 구조에 대한 States 탭에 속성이 표시됩니다. 사용 가능한 속성이 너무 많기 때문에, 프로젝트 레이아웃이 적합한 믹서 계층에서 가능한 한 높은 수준으로 믹싱을 시도하고, States에서 수정하려는 파라미터만 선택하는 것이 좋습니다. 각 State 탭은 사물을 분별있고 읽을 수 있도록 하기 위해 자체 속성 세트를 저장합니다. 따라서 Aux Send Volume 2가 한 구조에서 조정 가능한 속성으로 있으면, 각 구조에서 수동으로 선택하지 않는 한 다른 구조의  State 탭에 표시되지 않습니다.

 

brad3.png

 

아마도 더 흥미로운 것은 이제 State가 Effect 파라미터를 통제할 수 있다는 것입니다. 대부분의 Effect 파라미터는 다양한 State 그룹의 State 간에 조정될 수 있습니다!

그럼, 이러한 새로운 기능을 의미 있게 사용하는 방법에 대한 실용적인 예를 살펴보겠습니다. 예를 들어, 플레이어 State에 연결된 믹스 변경을 수행하려고 합니다. 과거에는 볼륨, 피치 및 필터를 조정할 수 있었고, 추가 이벤트를 통해 Effects 또는 기타 작업을 트리거 할 수 있었습니다. 하지만 이제, 우리는 단순히 State를 사용하는 것만으로 많은 세부사항들을 노출시킬 수 있습니다. Wwise의 확장된 State 믹싱 기능을 고려하여, 이러한 테크닉 몇 가지를 살펴보겠습니다.

우리가 지금 State에서 할 수 있는 한 가지 일은, 단순히 필터를 가지고 노는 것을 넘어, 우리의 구조에서 우리의 다양한 Send로 Send 볼륨을 조정하는 것입니다. 플레이어 State가 변경되었을 때, 우리가 몇 가지 소리를 보내고 싶은 Aux Bus가 있다고 가정해 보겠습니다. 우리는 왜곡 효과를 더하는 "injured"이라고 불리는 것과, EQ와 플렌저를 가진 "hallucination"이라고 불리는 것이 있습니다. 우리가 이 두 개의 Send를 우리의 Ambience Bus로 보내서, 플레이어의 상태가 바뀔 때 주변 소리에 영향을 주려고 한다고 가정합시다. 이렇게 하려면 우리가 보통 하는 것처럼 상위 버스에 Aux Bus를 추가하고, 믹스에서 존재하지 않도록  Aux Bus의 볼륨을 끝까지 낮추면 됩니다:

 

brad4.png

 

그런 다음 Bus Property Editor에서 States 탭을 클릭하고, Aux Send에 영향을 주려는 States 그룹을 추가한 다음, Properties 버튼을 클릭하여 State Properties 창을 표시합니다. User-defined Aux Send Volume 0 및 Aux Send Volume 1을 선택하면 States 탭에 표시됩니다(참고: 0과 1을 보려면 열을 약간 확장해야 할 수 있음). 이제 어느 적절한 States 내에서든 각 버스로 보낼 양을 설정하세요. 이 버스에서 이러한 send가 항상 들리게 설정하고 싶지는 않기 때문에 -96으로 설정하므로, 여러분이 설정하는 값은 -96이 계산된 상대적인 값이 될 것입니다. 아래 예에서는, 부상당한 플레이어 State의 볼륨이 -24(-96 + 72)에 있을 때 Ambience Bus를  보조 버스 "aux_injured"로 보내고,  환각 플레이어 State가  28(-96+68)에 있을 때 Aux Bus "aux_hallucnating"으로 보냅니다.

 

brad5.png

 

State 기능도 Aux Send에만 국한된 것은 아닙니다. 예를 들어, 플레이어에서 루프되는 심장 박동 사운드 Sequence Container가 있다고 가정해 보겠습니다. 플레이어 State에 따라 사운드의 트리거 속도에 영향을 주려고 합니다. 설정은 다음과 같을 것입니다:

 

brad6.png

 

이제 State 탭을 클릭하고 player_state라는 State Group을 추가하고 Properties를 클릭한 다음 Duration을 State 내에서 수정하려는 파라미터로 추가합니다. 아마도 우리는 환각 상태나 피곤할 때 심장 박동이 더 빨라지고, 선수가 다치거나 죽을 때 삼장 박동이 더 느려지기를 원할 것입니다. 트리거 속도가 1초로 설정되어 있으므로 시작점인 1에 비례하여 조정할 수 있습니다.

 

brad7.png

 

그래서 이제 우리의 심장박동 사운드는 평소에는 1초마다, 피곤할 때 1.75초, 환각 시 0.5초, 다쳤을 때 1.5초, 그리고 죽을 때는 2초마다 재생됩니다. 간단하죠!

심장 박동 사운드에 좀 더 풍미를 더하기 위해, 우리는 다양한 State에 참여하는 딜레이를 원하며, player_state라는 State Group에 따라  믹스과 피드백이 바뀌는 딜레이 이펙트를 만들고 싶다고 가정합시다. 먼저 새로운 딜레이 ShareSet을 만들겠습니다. Effect ShareSet를 열면 RTPC 탭 뒤에 새 State 탭이 나타납니다.

 

brad8.png 

Effect Editor에서 States 탭을 클릭하고 Properties 버튼을 눌러 State Properties 창을 열고 State에서 조정할 속성을 선택합니다. Properties 창에는 각 특정 Effect 내에서 조정할 수 있는 매개 변수만 표시됩니다. 아래에서 볼 수 있듯이, 딜레이는 피드백 양을 조정하고, 피드백을 활성화/비활성화하며, 출력 레벨과 Wet/Dry 믹스도 변경할 수 있도록 해줄 것입니다.

 

brad9.png

 

다음으로 Player_State Group을 추가하고 각 State 내의 값을 적절히 조정하겠습니다. 아래 예제에서, 우리의 ch_hero_heartbeat_loop 사운드의 딜레이는 플레이어가 피곤할 때 거의 들리지 않을 정도로 있을 것입니다. 부상을 입었을 때 약간의 피드백과 함께 미세하게 더 존재할 것이고, 환각을 느낄 때는 매우 강한 피드백을 가질 것이고, 믹스 안에서 프레전스(존재감)이 있을 것입니다. 그리고 마지막으로 죽을 때 조금 더 미세한 효과를 가질 것입니다.

 

brad10.png

 

이제 우리는 멋진 딜레이 이펙트를 얻었습니다. 하지만 게임에서 우리의 새로운 믹스 설정을 오디션 해 볼 때, 우리는 딜레이 이펙트가 항상 심장 박동 소리에서 재생된다는 것을 깨달았습니다. 우리는 일반 player_state에서 이펙트를 비활성화하는 것을 잊었습니다! 쉽게 수정할 수 있습니다: ch_hero_heartbeat_loop 컨테이너로 돌아가서, States 탭으로 이동하고 Properties을 클릭한 다음, 적절한 이펙트 슬롯에 대한 Bypass Effect를 추가하고, 일반 State에서 이 이펙트를 bypass the effect로 전환하면 이펙트가 무시됩니다.

 

brad11.png

 

또한 여러분은 RTPC 아이콘 옆에 새 아이콘이 있는 것을 볼 수 있고, 이 아이콘은 State 탭에 파라미터가 나열되면 파란색으로 바뀝니다. 이는 다양한 State Group의 영향을 받는 파라미터가 어떤 파라미터인지 신속하게 확인할 수 있도록 해주기 때문에 매우 중요합니다. State Properties 창에서 선택된 속성은 파란색 아이콘으로 표시되므로 속성을 관리하는 것이 다소 중요하다는 점을 이해하는 것이 좋습니다. 조정 중인 State들 중에서 State가 최소한 하나 이상 보이게 표시되도록 하여, 여러분의 구조에 아이콘 색상 설정이 의미 있도록 만드세요.

Screen Shot 2018-02-13 at 3.14.11 PM.png

Wwise 내부에서 새로운 믹스의 가능성을 사용하기 위한 기본 사항입니다. 하지만, 이것은 단지 표면에 불과합니다. 프로젝트에서 거의 모든 에셋에 걸쳐 State 기반 믹싱을 사용할 수 있는 능력은 우리가 이전에 꿈만 꿔왔던 높은 디테일을 우리 믹스에 실현 시킬 수 있는 문을 열어줍니다. 그리고 이전에는 복잡했던 작업을 몇 번의 마우스 클릭 만으로 가능하도록 만들어 줍니다.

다음과 같은 새로운 기능을 사용할 때 주의해야 할 몇 가지 사소한 주의 사항이 있습니다:

Wwise의 다른 State 사용과 마찬가지로, 해당 모수에 대한 최대값(예: 피드백 및 Wet/Dry 믹스)으로 캡을 씌우는 소수의 파라미터 값이 있습니다. 그래서 위의 예에서는 딜레이의 피드백이 15로 설정되어 있으면 환각 State에서는 60(15 + 45)이 됩니다. 특히 여러 개의 State가 단일 파라미터에 동시에 영향을 미칠 수 있는 가능성이 있는 경우 이를 염두에 두는 것이 중요합니다.

또한 ShareSets는 실질적으로 Effect 파라미터와 State-mixing 파라미터에 대한 프리셋이 되었습니다. 두 개의 서로 다른 구조에서 단일 State Group에 서로 다르게 영향을 미치려는 Effect ShareSet이 하나 있는 경우, 해당 Effect + State 설정의 각 인스턴스에 대해 두 개의 개별 ShareSets이 필요합니다.  즉, 믹스에서 항상 알맞은 Effect/State 관계에 액세스할 수 있는 것과 같은 방법을 통해 Effects, 그들의 매개변수 및 States를 설정하는 데 신중해야 한다는 것을 뜻합니다. 마지막으로, 사용자 지정 동작(custom behavior)으로 인해, 모든 파라미터를 사용할 수 있는 것은 아닙니다. 일부 파라미터는 런타임에 문제를 일으킬 수 있고, 다른 파라미터는 UI 상 이해가 되지 않습니다(현재 2D 또는 3D 패닝 포지션에 대한 제어 권한을 State 전체에 걸쳐 표현할 수 있는 방법은 없습니다). 그러나 Wwise 내의 거의 모든 Effect 속성 및 대부분의 다른 속성은 이제 State를 통해 액세스할 수 있고 변경할 수 있습니다.

그럼 남은 유일한 질문은, 여러분들은 어떻게 쓰실 건가요?

즐거운 믹싱 하세요!

Bradley Meyer

Audio Director

Sucker Punch Productions

Bradley Meyer

Audio Director

Sucker Punch Productions

Audio Director and sound designer with 18+ years of experience in game sound design, systems design, scripting and integration, voiceover direction, and more.

 @AuralSurgeon

댓글

댓글 달기

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

다른 글

Blade Runner: Revelations (블레이드 러너: 리벨레이션)

Blade Runner: Revelations는 잘 알려진 영화 ‘Blade Runner (블레이드 러너)’ 프랜차이즈에 기반한 상호작용 모바일 VR 게임으로, 최근 Seismic...

23.7.2019 - 작성자: Hexany Audio (헥사니 오디오)

Wwise와 Unity로 12일만에 상호작용 폴리 디자인하기

버튼을 누를 때마다 캐릭터의 외모, 태도, 자세가 끊임없이 새로워지는 캐릭터가 걷는다는 것은 폴리 아티스트에게 정말 꿈만 같으면서도 동시에 악몽이기도 하죠. 꿈이든 악몽이든,...

24.9.2019 - 작성자: 피에르-마리 블랑 (Pierre-Marie Blind)

라우드니스를 처리하는 최상의 방법, 제 2강: 라우드니스와 다이내믹 처리 방법

우리가 여기서 말하는 '라우드니스'는 우리가 예시로 측정하는 도시 소음이나 sound pressure level (SPL) 미터와는 다릅니다. SPL 미터는 소리 압력을 측정해요....

15.1.2020 - 작성자: 지에 양 (Jie Yang, 디지몽크)

소규모 게임 프로젝트가 Wwise로부터 혜택을 받을 수 있는 5가지 이유

여러분이 게임 오디오 분야에 종사하고 있으며 이전에 소규모 게임 프로젝트를 수행한 적이 있는 경우. 다음과 같은 대화를 나눈 적이 있을 수 있습니다. "근데, 와이즈와 같은...

7.7.2020 - 작성자: 알렉스 메이 (ALEX MAY)

WAAPI 간소화하기

Wwise 저작 API (Wwise Authoring API, WAAPI)를 사용하신 적이 없으시다면 이 글을 통해 사용해볼 기회가 생기기를 바랍니다. 네, 프로그래머가 아닌...

4.11.2020 - 작성자: Adam T. Croft

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

많은 사운드 디자이너들이 오디오 플러그인 개발을 오디오 프로그래머의 '흑마법' 영역이라 생각합니다. 보통 코딩 기술뿐만 아니라 수학, 물리학, 디지털 신호 처리 등 사운드...

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

다른 글

Blade Runner: Revelations (블레이드 러너: 리벨레이션)

Blade Runner: Revelations는 잘 알려진 영화 ‘Blade Runner (블레이드 러너)’ 프랜차이즈에 기반한 상호작용 모바일 VR 게임으로, 최근 Seismic...

Wwise와 Unity로 12일만에 상호작용 폴리 디자인하기

버튼을 누를 때마다 캐릭터의 외모, 태도, 자세가 끊임없이 새로워지는 캐릭터가 걷는다는 것은 폴리 아티스트에게 정말 꿈만 같으면서도 동시에 악몽이기도 하죠. 꿈이든 악몽이든,...

라우드니스를 처리하는 최상의 방법, 제 2강: 라우드니스와 다이내믹 처리 방법

우리가 여기서 말하는 '라우드니스'는 우리가 예시로 측정하는 도시 소음이나 sound pressure level (SPL) 미터와는 다릅니다. SPL 미터는 소리 압력을 측정해요....