Wwise Unity 통합에 대해 말해봅시다. 언제든지 참조할 수 있는 수년간 제작된 교육 자료가 꽤나 많습니다. Audiokinetic 교육 자료로 말하자면 Youtube에도 정말 많은 동영상이 있으며 Audiokinetic Q&A에도 많은 질문에 대한 상세한 답변이 제공되어 있죠. 그리고 Wwise-301 과정은 물론 Wwise Unity 통합 설명서도 빼놓을 수 없습니다.
이러한 교육 자료는 Wwise Unity 통합을 배우기 시작하는 데에 정말 좋은 자료이지만 만약 어느 정도의 수준이 있으신 분이라면 필요한 잔향 구역 컴포넌트의 이름을 찾기 위해서 수많은 자료를 한 페이지씩 살피기엔 너무 힘이 들겠죠. 그리고 심지어 Wwise Unity 통합 사용법을 배우고 나서도 때때로 질문이 생길 수 있습니다.
Wwise-Type 이벤트를 어떻게 올바르게 제작하죠?
공간 음향 잔향 구역 컴포넌트의 이름이 뭐였죠?
OnTriggerEnter()를 먼저 호출하나요 아니면 Update()를 먼저 호출하나요?
이벤트를 게시할 때 AkEvent를 사용하나요 아니면 AkAmbient를 사용하나요?
콜백 함수에 뭘 입력해야 했었죠?
꽤나 많은 사람들이 예전 프로젝트를 열어서 이미 만들어 놓은 좋은 함수가 있는 스크립트를 다시 살펴보고 조금 바꿔서 새로운 프로젝트에 사용할 겁니다. 자체적으로 관리 스크립트를 만들어서 명명 규칙을 개선하고 다시 작성하지 않아도 되도록 여러 함수를 차근차근 모으는 분들도 많죠. 그리고 심지어 예전의 오래된 코드를 다시 찾으려고 하면서도 그냥 처음부터 다시 작성하는 것이 더 괜찮았으려나 생각하는 경우도 있습니다.
제가 한 가지 제안을 할까 합니다. 우리가 함께 메모를 공유해서 Wwise Unity 개발 과정 속도를 높일 수 있도록 간편하고 관리하기 쉬운 한 페이지짜리 '커닝 페이퍼'를 만드는 거죠.
커닝 페이퍼에 추가할 내용
커닝 페이퍼에 대한 저의 제안을 말씀드리기 전에 먼저 제가 고려한 몇 가지 사항을 알려드릴까 합니다.
이것이 장기적으로 도움이 될까요? 모든 프로젝트에 적용할 수 있을까요? 이벤트 이름이나 계층 구조는 프로젝트에 따라 완전히 바뀔 수 있기 때문에, 간소화하거나 심지어 다른 프로젝트에서는 사용할 수 없는 커스텀 함수를 제거하는 것이 좋습니다. 이렇게 하면 커닝 페이퍼를 관리하는 데에 걸리는 시간도 절약하면서 공유성을 높일 수 있죠.
버전 간의 기능을 참조하는 것도 마찬가지입니다. 예를 들어 최근에 Unity에서 Wwise Editor 설정이 Unity > Edit > Project Settings로 옮겨졌기 때문에, Wwise Unity 통합 설정으로의 유용한 경로를 포함하더라도 더 오래된 Wwise 버전에서는 유효하지 않을 수 있습니다.
커닝 페이퍼의 가장 근본적인 목적은 해답을 찾는 데에 걸리는 시간을 절약하는 것입니다. 예를 들어 Unity의 Event 함수 전체 목록을 추가한다면 무언가를 찾으려고 할 때 도움이 되기는커녕 혼란을 줄 수 있죠. 마찬가지로 멋진 이미지와 시각적 효과는 피하도록 하여 심지어 누군가가 여러분의 커닝 페이퍼를 '빌리려고' 하더라도 직관적으로 둘러볼 수 있도록 하는 것이 좋습니다.
저는 이 커닝 페이퍼를 Unity에서 일부 작업하는 데에 사용하기 위해 제작하고 있기 때문에, 예를 들어 씬 뷰에서 F를 누르면 게임 오브젝트에 포커스할 수 있다는 등 Unity에 관한 일반 메모도 도움이 될 겁니다. 사실 한 구역에서 환경음을 재생하는 데에 흔히 사용하는 방법은 Unity Trigger가 있는 AkAmbient 컴포넌트를 사용하는 것인데, 이 경우 Trigger가 어떤 방식으로 작동하는지 자연스럽게 알고 싶을 겁니다.
그렇다면 이제 커닝 페이퍼에 대해 제가 몇 가지 권장 사항을 말씀드려볼까 합니다.
Wwise Unity 커닝 페이퍼
이 문서를 열어서 복사본을 저장하고 여러분 마음대로 변경해 보세요!
제가 일부러 웹기반 소프트웨어인 Google Drawing을 사용하여 커닝 페이퍼를 만들어서 여러분이 브라우저에서 파일에 접근하여 각자 드라이브로 복사할 수 있게 만들어 놓았습니다. 드라이브에 복사한 후에 여러분이 원하는 대로 각 모양이나 텍스트 입력란을 변경할 수 있습니다.
여러분의 편의를 돕기 위해서 PDF로 다운로드하면 많은 용어와 함수를 링크로 연결해 놓았습니다. 이렇게 하면 여러분이 로컬 컴퓨터에 저장해서 별도의 창이나 iPad 혹은 보조 모니터에 띄울 수 있죠. 문서를 쉽게 변경할 수 있도록 제작했기 때문에 저희도 Wwise Unity 통합의 새로운 버전으로 계속 업데이트하도록 하겠습니다. 이 문서를 저장해서 변경하고 원하는 곳에 마음껏 공유해 주세요.
커닝 페이퍼에서 찾을 수 없는 팁과 요령
커닝 페이퍼에 추가할 필요는 없지만 도움이 되는 것들을 살펴봅시다. 그중 한 예시는 바로 또 다른 인스펙터 창을 추가해서 심지어 서로 다른 게임 오브젝트에서의 두 컴포넌트를 동시에 확인할 수 있다는 것입니다. Unity 프로젝트를 준비하기 위해 필요한 과정도 중요하지만 한 번 실행하고 나면 나머지 개발 과정에서는 별로 필요하지 않는 일회성 작업이기 때문에 딱히 커닝 페이퍼에 추가할 필요가 없겠죠.
이렇게 많은 팁을 커닝 페이퍼에는 추가할 수 없지만 몇 가지를 공유해 드릴게요. 제가 놓친 유용한 팁이 있다면 제가 깊게 신뢰하는 훌륭한 Wwise 커뮤니티 분들이 이 블로그의 댓글 섹션을 통해서 알려주셨으면 합니다!
Play 모드로 들어가고 나오기
Unity에서 게임을 플레이해보려면 먼저 Play 모드로 들어가야 합니다. 하지만 제가 볼 때 'Play 모드 안에 있음'과 'Play 모드에 있지 않음'의 상태가 작은 버튼이 눌러지고 강조 표시된다는 점 외에는 딱히 분명하지 않더군요.
현재 모드가 무엇인지를 분명히 알 수 있도록 하기 위해서 Unity의 Preferences > Colors > Playmode tint로 가면 현재 상태를 명확히 식별하도록 덮어쓸 수 있는 색깔을 추가할 수 있습니다.
그리고 만약 Play 모드에 있을 때 변경한 것이 있다면 톱니바퀴 아이콘을 사용하여 컴포넌트를 복사해서 Play 모드를 종료한 후에 컴포넌트의 값을 복사해 넣어서 여러분이 작업한 내용을 유지할 수 있습니다.
여러 인스펙터 동시에 확인하기
Wwise와 마찬가지로 Unity의 뷰도 원하는 대로 재배열할 수 있습니다. 하지만 여러 인스펙터 뷰를 한 번에 확인할 수 있다는 점을 아셨나요? 사실 또 다른 Game 뷰를 추가해서 다른 카메라를 쉽게 지정할 수 있기 때문에, 여러 카메라를 사용할 경우 이런 경우가 아주 흔합니다. Wwise Unity 개발자는 이 뷰를 사용해서 여러 게임 오브젝트를 동시에 확인해서 Wwise Unity 통합 컴포넌트의 설정을 비교할 수 있죠. 이렇게 구성하기 위해서는 Inspector 창을 우클릭하고 Add Tab > Inspector로 가세요.
그런 다음 인스펙터 창 중 하나를 잠그세요…
… 그런 다음 다른 게임 오브젝트를 선택하세요.
끝입니다!
게임 오브젝트에 있는 컴포넌트 검색하기
몇 날 며칠 동안 오디오 통합 작업을 하다 보면 어떤 게임 오브젝트를 변경하고 어떤 것을 변경하지 않았는지 잊어버리기가 쉽습니다. 이때 씬에 있는 모든 게임 오브젝트를 통틀어 여러분의 컴포넌트 연결을 모두 찾을 수 있는 방법이 있습니다. Unity의 Hierarchy 뷰에서 가장 상단으로 가서 'AkEvent'와 같이 컴포넌트의 이름을 검색하세요. 이렇게 하면 기준에 맞지 않는 게임 오브젝트가 필터링되어서 해당 컴포넌트가 있는 각 게임 오브젝트를 확인할 수 있습니다.
이렇게 Wwise Unity 통합 사용에 관한 저의 최고의 팁을 알아보았습니다. 아마 여러분도 훌륭한 팁을 알고 계실 거예요! 이 Wwise Unity 커닝 페이퍼를 여러분도 활용하실 수 있기를, 그리고 제 팁을 재미있게 읽어보셨기를 바랍니다. 댓글과 소셜 미디어에서 여러분의 메모를 공유해 주시고 저희가 여러분의 멋진 작업을 볼 수 있게 @audiokinetic과 해쉬태그 #Wwise를 달아서 저희를 태그해 주세요!
댓글