Unity3D에서 사운드 디자이너의 역량 강화하기

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

최근 몬트리올 국제 게임 서밋(Montréal International Game Summit, MIGS)에서 '사운드 디자이너의 역량 강화하기'라는 제목으로 발표를 한 적이 있습니다. 이 발표는 두 가지 목적을 가지고 있었죠. 먼저, 곧 출시 예정인 Anamorphine(애나몰핀)이라는 게임을 제작하면서 우리가 개발한 오디오 도구 세트를 선보이고 싶었습니다. 그리고 전체 작업 과정에서 오디오가 차지했던 독특한 역할에 대해 얘기하고 싶었습니다.

 

 

제가 Artifact 5에 입사했을 때 저희 팀은 Anamorphine을 출시하기까지 3년의 시간이 있었습니다. 사실 이 회사는 보조금 신청에 도움이 필요했는데, 보조금 신청이 성공하면서 회사에 충분한 자금을 모을 수 있게 되었죠. 프로젝트 개발 중 이렇게 초기 단계에서 합류하게 된 것은 사운드 디자이너인 저에게 아주 독특한 경험이었습니다. 대부분의 경우처럼 거의 개발 마지막 단계에 합류하는 것이 아니라 주요 개발 파이프라인에 사운드 작업 과정을 제작해 넣을 수 있었죠.

덕분에 맞춤 Unity-Wwise 통합 도구 세트를 프로그래머가 저와 함께 차근 차근 제작할 수 있었고, 이 도구는 통합이 강화되면서 아주 유용하게 사용되었습니다. 이 도구는 'Audio Box(오디오 박스)'라고 불리는 '우산' 컴포넌트 (포괄적 컴포넌트) 아래에서 작동합니다. 이러한 도구 덕분에 저는 사운드 디자인이나 상호작용 아이디어가 떠오른 후 원본 에셋 작업을 반복하기 전에 게임 안에서 아이디어를 만들고 통합하고 시험할 수 있는 제대로 된 작업 과정을 누릴 수 있었습니다. 즉, 이 과정을 설계 단계의 일부로서 처음부터 끝까지 진행할 수 있었죠. 저는 Unity에서 독립적으로 작업할 수 있었기 때문에 프로그래머가 오디오 작업을 완료할 때까지 기다릴 필요가 없었습니다. 프로그래머에게 있어 오디오 작업은 주요 게임 플레이에 대한 코딩 작업보다 우선 순위가 낮기 때문에 오디오 작업을 완료하는 데 꽤 많은 시간이 걸릴 수 있죠. 마찬가지로 프로그래머 입장에서도 수많은 오디오 관련 요구 사항에 대해 걱정할 필요가 없었습니다. 그리고 결과적으로 복잡하고 정교한 오디오 시스템을 게임 플레이에 매끄럽게 통합할 수 있었죠.

물론 Wwise 에는 이미 기존 통합 도구가 다양하게 있지만 이러한 도구는 기본적인 통합 업무만 다루며 여러 가지 도구와 컴포넌트에 흩어져 있습니다. Audio Box는 전체 게임 플레이 섹션을 제어하는 중앙 Audio Box 허브에서 이런 기존 기능 뿐만 아니라 수많은 추가 기능을 모두 제어할 수 있게 해줍니다. 예를 들어 Anamorphine은 중앙 메커니즘의 일부로 매끄러운 씬 전환 효과가 많은 게임입니다. 그래픽 씬이 전환할 때마다 저도 사운드를 매끄럽게 전환해야 했죠. 중앙 Audio Box 컨트롤러 안에서 복잡한 전환효과라 할 지라도 손쉽게 오디오를 움직이고 변경하고 제어할 수 있었습니다.

실제 도구 세트를 함께 둘러볼까요.

 

AUDIO BOX (오디오 박스)

Picture1.png

Audio Box는 중앙 허브로서, 트리거 콜라이더(trigger collider)가 있을 수도 있고 없을 수도 있습니다. 게임 음향 기능의 섹션들을 제어하죠. 위의 그림에서 보라색 구와 선으로 표시된 부분이 Audio Box가 참조하는 게임 오브젝트입니다.

  • Audio Box는 다양한 컴포넌트를 가지고 있으며 각 컴포넌트는 Delay(지연)과 Trigger Only Once(한 번만 트리거) 옵션을 가지고 있습니다.
  • Delay는 트리거된 Event의 시간 지연 효과를 설정하도록 해주며 Trigger Only Once는 버그 방지에 아주 유용합니다.
  • 각 Audio Box에 수많은 기능 요소를 넣을 수 있으며, 한 게임 오브젝트에 Audio Box를 여러 개 배치하여 기능 설정별로 Audio Box를 대대적으로 분류할 수도 있습니다.

EVENT 게시하기

여기서 가장 중요한 점은 바로 Audio Box를 통해 Wwise Event를 트리거할 수 있다는 점입니다. 이 작업은 Trigger Collider (On Enter, On Exit), On Start, On Event를 사용하여 이루어지는데 이들은 Event Tag System(이벤트 태그 시스템)이라고 불리는 Audio Box가 사용하는 두 번째 도구 세트에 연결됩니다 (아래 참고).

Picture2.png

여기서 제가 특별히 더한 부분은, AkAmbient나 AkEvent컴포넌트와 함께 간단히 기존 게임 오브젝트만 참조하면 Audio Box가 해당 Event를 가져와 프로그램된 시기에 트리거하도록 만든 부분입니다. 하나의 Event 게시 컴포넌트로 여러 개의 게임 오브젝트를 참조하는 것은 굉장한 효과가 있습니다. 각 게임 오브젝트가 각자의 Event를 따로따로 트리거할 수 있죠. 이를 잘 이용하면 예를 들어 플레이어가 들어오는 때에 맞춰 환경적인 공간을 트리거할 수도 있고, 플레이어가 게임 Event를 하나만 트리거해도 여러 개의 소리 Event를 한꺼번에 트리거할 수도 있습니다. 또한 'Event' 상자를 선택 해제하고 드롭 다운 메뉴에서 Audio Box 안에 있는 Event를 선택하면 기존의 게임 오브젝트를 참조하지 않고도 Event를 트리거할 수 있습니다.

Picture3.png

 

RTPC 설정하기

또한 Audio Box를 사용하면 RTPC를 구성하고 변경할 수 있습니다. Audio Box에서는 Toggle(토글)Add(추가) 기능을 각각 사용하여 매개 변수 변경에 대한 Absolute(절대적)과 Relative(상대적) 토글을 제공합니다. 이러한 토글은, 컴포넌트 내 게임 오브젝트를 지정하면 그 범위 안에서 매개 변수를 제어할 수도 있고, 따로 지정하지 않으면 전반적인 매개 변수를 제어합니다.

Picture4.png

또한 저는 State와 Switch도 트리거할 수 있습니다.

 

Picture5.png

무엇보다, 플레이어 위치에 따라 매개 변수 값을 변경할 수 있는 추가 도구들이 매우 흥미로웠습니다.

Curve Over Distance(거리에 대한 곡선)는 매개 변수의 경사도를 설정합니다. 콜라이더의 중심은 비율의 최대치를, 가장 자리는 비율의 최소치를 표시하죠. 이 트리거 영역 안에서 플레이어가 움직이면 매개 변수 값이 여기에 맞게 변경됩니다.

 

Picture6.png

Distance Slider(거리 슬라이더)는  제가 직접 설정한 두 지점에서의 매개 변수 최소/최대값을 설정하며, 어느 시점에서든 콜라이더 밖으로 나가면 매개 변수의 최종 값을 현재 값으로 설정합니다.

Picture7.png

 

ATTACH (연결) / MOVE-TOWARD (앞으로 이동)

Attach와 Move 옵션은 완전히 다른 차원의 기능을 더했습니다. 오디오 게임 오브젝트를 전환 효과와 씬 사이로 이동할 수 있는 기능은 Anamorphine 게임에서 제 작업에 아주 중요한 역할을 했죠.

  • Attach(연결)는 제가 원하는 게임 오브젝트를 같은 씬 내의 또다른 오브젝트에 연결할 수 있게 해줍니다.
  • Attach to Player(플레이어에 연결)는 캐릭터 컨트롤러가 어느 씬에 있든 상관 없이 어떤 게임 오브젝트이든지 플레이어에 연결할 수 있게 해줍니다.
  • Move to(~로 이동)와 Move Toward Player(플레이어를 향해 이동)는 제가 원하는 속도로 한 오브젝트를 다른 게임 오브젝트나 플레이어를 향해 이동할 수 있게 해줍니다. 

이러한 도구들을 종합적으로 이용해 플레이어와 플레이어 동작에 따라 3D 위치 지정 음향을 자유롭게 이동할 수 있었습니다.

아래 스크린샷을 보시면, 매끄럽게 연결된 씬 전환을 확인하실 수 있을 겁니다. 위에 설명한 Audio Box 도구들을 함께 사용해, 이전 씬에서 나는 소리를 다음 씬으로 넘어가면서 부드럽게 사라지도록 만들었습니다. 저는 Trigger Exit(트리거 퇴장)이 아니라, 코드 씬이 직접 트리거 하는 Event Tag(이벤트 태그)로 Attach 기능을 트리거하여, 플레이어가 텔레포트하기 전부터 이러한 사운드가 플레이어에 연결될 수 있게 하였습니다. MIGS 비디오에서 이 부분을 들어보실 수 있을 거예요.

Picture8.png

Picture9.png

EVENT TAG SYSTEM (이벤트 태그 시스템)

위에서 설명한 'On Event(Event에서)' 트리거 기능은 Event Tag System이라는 2차 도구 세트와 연결됩니다. 이를 통해 저는 애니메이션 이벤트와 스토리 결정 지점 등, 게임 내 다양한 트리거에 따라 음향을 트리거할 수 있죠.

Event Tag System은 이벤트를 동작에 연결해주는 간단한 이벤트 시스템입니다. Unity 안에 있는 요소는 반드시 내부적으로 이벤트나 동작을 지원해야지만 다음과 같은 형태의 경로 태그를 이용해 등록할 수 있습니다.

Events / Apartment / Teleportation / Before

동작과 이벤트는 '다수에서 다수'로 연결할 수 있습니다. 다시 말해 한 이벤트나 동작을 여러 개 태그로 등록할 수 있으며, 반대로 하나의 태그가 다양한 동작이나 이벤트와 연결될 수 있습니다.

Unity에서는 서로 다른 씬 간의 교차 참조를 허용하지 않는데, Event Tag System은 이를 무시하고 다른 분야의 씬 세트에서 트리거 되는 이벤트와 상호작용할 수 있게 해줍니다. 이러한 강점 덕분에 각 분야의 사람들이 각각 자신의 씬 세트에서 따로 작업할 수 있어, Git 충돌 문제를 최소화하고 다양한 작업 과정을 동시에 진행할 수 있습니다.

 

결론

Audio Box는 프로젝트와 함께 유기적으로 발전해, 사운드 디자이너인 사운드 디자이너인 저의 음향 작업 과정을 더 명확히 해줬을 뿐만 아니라 아주 든든한 힘이 되었습니다. 제게 필요한 부분이 새롭게 생길 때마다 프로그래머는 이에 따라 Audio Box를 변경하거나 내용을 더했죠. 새로운 변경 작업은 융통성이 뛰어났으며, 원래 설계의 특정 목적뿐만 아니라 전반적인 작업 과정을 향상시켰습니다.

이렇게 프로젝트 초반에 조금만 공을 들이면 팀 전체가 훨씬 수월하게 작업할 수 있었으며, 프로젝트 전체의 성장에 따라 음향 작업 과정도 아주 효율적으로 진행할 수 있었습니다.

뿐만 아니라 사운드를 게임 디자인의 초기 제작 단계에 도입하여 필수 게임 플레이, 스토리텔링, 게임 분위기 결정 작업에 풍부하고 강력한 사운드를 구현할 수 있었습니다. 개발 초기에 특정 게임 아이디어를 염두에 두고 구성된 Audio Box는, 몰입감을 높이고 풍부한 감정을 불어넣어 궁극적으로 높은 수준의 게임을 만들어냈습니다.

  

Subscribe

BEATRIX MOERSCH (베아트릭스 모쉬)

사운드 디자이너 & 작곡가

Framing Noise

BEATRIX MOERSCH (베아트릭스 모쉬)

사운드 디자이너 & 작곡가

Framing Noise

베아트릭스 모쉬는 사운드 디자이너 겸 작곡가이며 Artifact 5의 Anamorphine과 Casa Rara의 Museum of Symmetry 제작에 참여했습니다. 그는 10년 넘게 음향 그 자체를 목적으로 하는 사운드 및 시각적 경험에 동반할 사운드를 제작해왔습니다. 2012년에 처음 상호작용 오디오를 접한 후 매력을 느껴 몰입감을 한층 높이는 사운드 경험을 만들어낼 수 있는 게임 분야로 발을 내딛게 되었습니다.

www.framingnoise.com

에서 더 자세히 알아보세요.

댓글

댓글 달기

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

다른 글

Wwise 개발팀이 직접 전해드리는 팁!

이 글은 주로 Wwise 고급 사용자에 초점을 맞춰, 몇 가지 팁을 통해 비교적 덜 알려진 Wwise 기능을 다루고 있습니다. 여러분의 지식 수준에 따라 일부 섹션은...

30.4.2019 - 작성자: 베르나르 로드리그 (Bernard Rodrigue)

잔향도 공간화가 필요합니다: Wwise Spatial Audio의 Room과 Portal 가이드

최근에 공간 음향에 대한 관심이 아주 뜨거워졌습니다. 하지만 사실 '공간 음향'이 의미하는 것은 매우 다양할 뿐만 아니라 사용할 수 있는 옵션이 너무 많아 어렵게 느껴질 수...

6.8.2019 - 작성자: 네이튼 해리스 (NATHAN HARRIS)

많이 쓰이는 휴대폰 기종의 라우드니스와 주파수 반응

iPhone이 다른 폰보다 음질이 더 좋을까요? 만약 그렇다면 왜일까요? 화웨이 휴대폰은 음질이 어떨까요? 휴대폰 기종마다 음질이 다 다르답니다. 그런데 제가 몇 년간 모바일...

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

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

Wwise용 오디오 플러그인을 개발하는 것은 디지털 오디오 편집 프로그램 (DAW)에서 플러그인을 개발하는 것과 꽤 다릅니다. Wwise는 상호작용적이며 수많은 플랫폼을 지원하기...

27.8.2019 - 작성자: 조엘 로비쇼 (Joel Robichaud)

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

블로그 제 1부를 읽어주세요! 다양한 게임 플레이를 지원해주는 Wwise 컨트롤 앞서 말씀드렸듯이 이 게임에서는 카메라의 위치가 자주 변경됩니다. 표준 후면 시점부터 시작해서 탑...

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

라우드니스를 처리하는 최상의 방법, 제 1강: 라우드니스 측정 (1부)

방송과 같은 푸시 서비스, 멀티 플랫폼 상호작용 엔터테인먼트, 인터넷 스트리밍과 같은 다양한 미디어 형식에서 라우드니스는 단지 신호 전달 표준이 아니라 소비자 선호에 직접적인...

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

다른 글

Wwise 개발팀이 직접 전해드리는 팁!

이 글은 주로 Wwise 고급 사용자에 초점을 맞춰, 몇 가지 팁을 통해 비교적 덜 알려진 Wwise 기능을 다루고 있습니다. 여러분의 지식 수준에 따라 일부 섹션은...

잔향도 공간화가 필요합니다: Wwise Spatial Audio의 Room과 Portal 가이드

최근에 공간 음향에 대한 관심이 아주 뜨거워졌습니다. 하지만 사실 '공간 음향'이 의미하는 것은 매우 다양할 뿐만 아니라 사용할 수 있는 옵션이 너무 많아 어렵게 느껴질 수...

많이 쓰이는 휴대폰 기종의 라우드니스와 주파수 반응

iPhone이 다른 폰보다 음질이 더 좋을까요? 만약 그렇다면 왜일까요? 화웨이 휴대폰은 음질이 어떨까요? 휴대폰 기종마다 음질이 다 다르답니다. 그런데 제가 몇 년간 모바일...