Wwise 오디오 플러그인을 제작하는 간단한 과정

상호작용 오디오 / 사운드 디자인 / Wwise에 대한 팁과 도구

Wwise용 오디오 플러그인을 개발하는 것은 디지털 오디오 편집 프로그램 (DAW)에서 플러그인을 개발하는 것과 꽤 다릅니다. Wwise는 상호작용적이며 수많은 플랫폼을 지원하기 때문에 초보자가 모든 것을 이해하기가 매우 복잡하죠. 저희가 내부적으로 도구를 개발했음에도 불구하고 저희 플러그인 개발 파이프라인은 이해하기가 너무 어려워서 새로운 플러그인을 만드는 데 어려움을 겪었습니다. 그래서 더 많은 플러그인 개발자가 사용할 수 있도록 저희가 내부적으로 개발한 도구를 단순화하고 재작성하는 시간을 갖기로 했습니다. 이 글을 통해서 새로워진 도구를 자세히 살펴보고 이 도구를 이용해 Wwise용 오디오 플러그인을 직접 만들 수 있는 방법을 배워보세요!

잠깐, 근데 제 도구는 어디 있죠?

플러그인 개발 도구는 Wwise 2018.1.3.6784에서 처음 소개되었으며 현재 Wwise Launcher에서 다운로드하실 수 있습니다. 이 글을 따라서 플러그인을 직접 개발하시려면 플러그인 개발 도구와 Windows_vc140 SDK 플랫폼을 시스템에 설치하세요. 그리고 Python(모든 버전 사용 가능)과 Visual Studio 2015를 설치하셔야 합니다. 도구 자체는 /Path/To/Wwise 2018.1.3.6784/Scripts/Build/Plugins/wp.py에 있는 단일 진입점을 통해 접근하실 수 있습니다. 이 글에서는 간단히 wp를 사용해서 wp.py로의 전체 경로를 지정하겠습니다.

 

1

좀 더 수월한 작업을 위해 기본 틀 다지기

샘플은 정말 굉장하죠. 샘플을 사용하면 특정 프레임워크가 실제 환경에서 사용될 수 있는지를 확인할 수 있습니다. 이런 프레임워크를 처음 시작할 때 굉장히 중요한 부분이죠. 하지만 샘플을 살펴본 다음에는 어떻게 하나요? 제작하려는 애플리케이션에 가장 가까운 샘플의 중요하지 않은 부분을 삭제한 다음 거기에서부터 작업하시나요? 저는 개인적으로 이 과정에서 오류가 발생하기 쉬운 것 같아서 되도록이면 이 방법을 사용하지 않으려고 합니다. 이 문제를 해결하고 새로운 플러그인 제작 환경을 더 쾌적하게 하기 위해 저희는 가장 보편적인 플러그인 타입(효과, 음원, 싱크, 믹서)에서 사용할 때 기본 틀을 잡아주는 플러그인 생성기를 제작했습니다.

3-4

생성된 프로젝트에는 플러그인 제작을 시작하는 데 필요한 모든 파일이 담겨 있어요. 이 프로젝트에는, 아직은 거의 비어 있지만 작동할 수 있는 Sound Engine과 Wwise Authoring 플러그인의 코드뿐만 아니라 조금 있다 살펴볼 몇몇 설정 파일이 들어 있습니다.

몇 번이고 빌드하세요. 어디에서든 작동합니다.

Wwise가 지원하는 플랫폼은 정말이지 엄청나게 많습니다. 개발자에게는 놀라우면서도 불행한 소식이라고 할 수 있죠. 먼저, 게임 개발자가 지원되지 않는 플랫폼이 있지는 않은지 걱정할 필요 없이 Wwise를 엔진에 쉽게 통합할 수 있다는 장점이 있습니다. 반면, 플러그인 개발자 입장에서는 모든 플랫폼을 다 지원해야 하니 골머리를 앓기 마련이죠. 특히 일부 플랫폼은 라이선스까지 필요하니까요. 한 가지 대안으로 Windows 전용 플러그인을 제작해서 Wwise 안에서 효과를 미리 렌더링하는 방법을 사용할 수 있지만 그럴 경우 플러그인의 상호작용성이 아예 없어지게 됩니다.

 

새로운 개발 도구를 사용하면 Wwise가 지원하는 모든 플랫폼용으로 제작하고 관리하기가 훨씬 쉬워집니다. 여전히 해당 플랫폼의 개발 도구를 설치해야 하지만, 그러고 나면 간단히 wp만 호출하면 돼요.

 

4
 
5

빌드 결과는 wp가 호출되는 Wwise 폴더로 직접 출력되기 때문에 빌드-테스트-조정 주기를 예전보다 훨씬 짧게 해줍니다. 

 

6

패키징의 신비로움

저는 개인적으로 패키징은 개발 과정에서 그냥 신비롭게 실행되어야 하는 부분이라고 생각합니다. 패키징 시스템을 직접 다시 구현하거나 작업해야 한다는 사실 하나를 깨우치겠다고 굳이 패키징 시스템의 작동 방식을 배울 필요는 없으니까요.

7

8

패키지 하위 명령은 주어진 플랫폼의 지정된 위치에서 빌드 결과물을 자동으로 가져오며 .tar.xz 포맷으로 보관합니다. 생성 번들 하위 명령은 모든 플랫폼이 패키징된 후에 실행되어야 하는 가장 마지막 단계입니다. 이 단계는 여러분의 플러그인 루트 폴더에 있는 bundle_template.json에서 bundle.json 파일을 생성해요. bundle_template.json 파일은 주석을 사용하여 자체적으로 문서화되며 플러그인에 대한 정보를 입력하기 위해 명령을 실행하기 전에 편집할 수 있습니다. 그런 다음 이 두 단계로 인해 생성되는 파일은 Wwise Launcher를 통해 공유하고 설치할 수 있습니다.

 

9

Wwise 플러그인을 넘어서

대상 호스트가 Wwise이든 DAW이든 상관없이 오디오 플러그인은 오디오 플러그인이에요. 대상 호스트의 일부 특정 사항을 떼어놓고 보면 모든 오디오 플러그인은 몇몇 디지털 신호 처리 코드를 구동하기 위해 실시간으로 편집할 수 있는 매개 변수를 가진 유저 인터페이스를 가지고 있습니다. 다시 말해 거의 동일한 코드 기반을 사용해서 Wwise와 DAW 둘 다 대상 호스트로 할 수도 있죠.

최근에 저는 JUCE 오디오 플러그인 개발 프레임워크를 사용해서 이 가능성을 연구해봤습니다. 그리고 올해 오디오 개발자 컨퍼런스(ADC 2018)에서 그 결과를 발표했어요.

 

 여기에서 발표 자료를 확인하세요.

JUCE를 사용해서 Wwise용 오디오 플러그인을 제작하는 데 관심이 있으시다면 제가 발표한 Voluminous를 읽어보세요. 제 사례 연구서는 Github에서 확인하실 수 있습니다.

2018-10-22_20-33-32

2018-10-22_20-36-23

 

 
Screen Shot 2017-12-14 at 5.24.24 PM.png

Audiokinetic 스토어에 여러분의 플러그인을 뽐내고 싶으신가요?

Subscribe

 

조엘 로비쇼 (Joel Robichaud)

소프트웨어 개발자

조엘 로비쇼 (Joel Robichaud)

소프트웨어 개발자

조엘 로비쇼는 컴퓨터 음악과 컴퓨터 공학 학위를 가진 소프트웨어 개발자입니다. 조엘은 Audiokinetic의 Wwise Experience 팀에서 Wwise Authoring과 Wwise Launcher와 같은 사용자가 직접 마주하는 소프트웨어 쪽을 주로 작업하고 있습니다.

 @joelrobichaud

댓글

댓글 달기

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

다른 글

Wwise Unity 커닝 페이퍼

Wwise Unity 통합에 대해 말해봅시다. 언제든지 참조할 수 있는 수년간 제작된 교육 자료가 꽤나 많습니다. Audiokinetic 교육 자료로 말하자면 Youtube에도...

2.2.2021 - 작성자: 매스 마라티 소노로 (MADS MARETTY SØNDERUP)

위치 기반 엔터테인먼트, 불규칙적 스피커 구성과 Wwise

Wwise는 오디오 채널의 개수와 스피커 배열이 기존의 소비자 채널 구성을 따르는 콘솔과 PC 게임 개발에 사용하는 것으로 잘 알려져 있습니다. 하지만 Wwise가 빛을 발하는...

16.11.2021 - 작성자: 숀 랩티스트 (Shawn Laptiste)

텔 미 와이(Tell Me Why) | 오디오 다이어리 제 2부: 음악

Tell Me Why의 음악은 본질적으로 캐릭터의 서사와 감정을 뒷받침하도록 설계되었습니다. 게임의 이야기는 두 주인공에게 아주 자세하게 집중되어 있으며 생각에 잠기기 쉬운 느린...

23.6.2022 - 작성자: 루이 마르탱 (Louis Martin)

ReaWwise: REAPER와 Wwise 연결하기

소개 Audiokinetic이 제작한 새로운 REAPER 확장을 드디어 공개합니다! ReaWwise는 REAPER 프로젝트에서 Wwise로의 오디오 에셋 전송을 간소화해줍니다....

5.10.2022 - 작성자: 앤드류 코스타 (Andrew Costa)

Wwise 2022.1 새로운 기능

Wwise 2022.1이 출시되었으며 Audiokinetic 런처를 통해 다운받으실 수 있습니다. 이 버전이 제공하는 새로운 기능을 간략하게 소개해드리려고 합니다....

16.11.2022 - 작성자: Audiokinetic (오디오키네틱)

Strata, Wwise, Unreal을 결합해 몰입형 게임 환경 만들기

이 블로그에서는 Wwise가 통합된 Unreal Engine 5 프로젝트의 멀티트랙 컬렉션 중 하나를 사용하여 Strata를 이용한 상호작용 디자인 과정을 살펴보겠습니다.이...

16.5.2023 - 작성자: 체이스 스틸(Chase Steele)

다른 글

Wwise Unity 커닝 페이퍼

Wwise Unity 통합에 대해 말해봅시다. 언제든지 참조할 수 있는 수년간 제작된 교육 자료가 꽤나 많습니다. Audiokinetic 교육 자료로 말하자면 Youtube에도...

위치 기반 엔터테인먼트, 불규칙적 스피커 구성과 Wwise

Wwise는 오디오 채널의 개수와 스피커 배열이 기존의 소비자 채널 구성을 따르는 콘솔과 PC 게임 개발에 사용하는 것으로 잘 알려져 있습니다. 하지만 Wwise가 빛을 발하는...

텔 미 와이(Tell Me Why) | 오디오 다이어리 제 2부: 음악

Tell Me Why의 음악은 본질적으로 캐릭터의 서사와 감정을 뒷받침하도록 설계되었습니다. 게임의 이야기는 두 주인공에게 아주 자세하게 집중되어 있으며 생각에 잠기기 쉬운 느린...