[TIL_250425] Wwise와 Unreal 연동 가이드(1) : Wwise 기본 세팅

2025. 4. 25. 22:30·Dev./Wwise 와이즈
 

Audiokinetic

Audiokinetic - The global leader in interactive audio technology.

www.audiokinetic.com

💭회고

게임 오디오는 단순한 배경 요소가 아닌, 게임플레이 경험을 완성하는 핵심 요소다. Wwise와 언리얼 엔진을 능숙하게 연동하면 게임의 몰입감과 품질을 크게 향상시킬 수 있다....!


📒학습 내용

1. Wwise란 무엇인가?

Wwise(Wave Works Interactive Sound Engine)는 Audiokinetic 사에서 개발한 전문 게임 오디오 미들웨어(게임 개발에서 오디오 처리를 전담하는 중간 소프트웨어)다. 이 도구는 게임 개발 과정에서 사운드 디자이너와 프로그래머가 함께 효율적으로 작업할 수 있는 환경을 제공한다.

Wwise는 단순한 오디오 재생 도구가 아닌, 게임 내 사운드의 동적 처리와 관리를 위한 종합 솔루션이다.

Wwise의 주요 특징

  • 비선형적 오디오 구현: 게임 상황에 따라 동적으로 변화하는 적응형 사운드를 구현한다.
  • 실시간 오디오 믹싱: 게임 내 상황에 따라 실시간으로 오디오 믹스를 조절한다.
  • 크로스 플랫폼 지원: PC, 콘솔, 모바일 등 다양한 플랫폼을 지원한다.
  • 광범위한 플러그인 시스템: 다양한 오디오 효과와 처리를 위한 플러그인을 제공한다.
  • 효율적인 메모리 관리: 제한된 게임 환경에서도 최적화된 오디오 성능을 제공한다.

Wwise 작업 흐름

  1. 오디오 자산 가져오기 (Import)
  2. 사운드 계층 구조 생성 (Sound Hierarchy)
  3. 이벤트와 상태 설정 (Events & States)
  4. 게임 파라미터와 연결 (Parameters)
  5. 믹싱 및 효과 설정 (Mixing & Effects)
  6. 통합 및 테스트 (Integration & Testing)
🔹 실무 팁 :: 대규모 프로젝트의 경우, 초기 단계부터 Sound Bank(사운드 뱅크: 게임에서 사용할 오디오 파일을 효율적으로 관리하는 단위)를 논리적으로 구조화하는 것이 중요하다. 레벨별, 기능별로 Sound Bank를 분리하면 메모리 관리와 로딩 시간을 최적화할 수 있다.

2. Wwise 기초

2.1 Wwise 설치

  1. Audiokinetic 웹사이트에서 Wwise 및 언리얼 엔진용 통합 플러그인을 다운로드한다.
  2. Wwise Launcher를 실행하고 설치 프로세스를 진행한다.
    1. Authoring: 게임에 전송하기 전에 콘텐츠를 제작 및 편집하는 Wwise 소프트웨어.
    2. Deployment Platforms: 게임이 배포될 운영 체제. 이 플랫폼은 개발 플랫폼이 아니다. 하지만 시험을 위해서 개발 플랫폼도 포함하는 것이 좋을 수 있다. 
    3. Plug-in: Wwise에 더할 수 있는 추가 기능. 처음 사용하는 사람일 경우 학습 콘텐츠에서 별도로 필요로 하지 않는 이상 추가하지 않아도 된다.

Wwise

 

2.1 Wwise 레이아웃 & 게임 프로파일링하기

Profiler레이아웃 : 게임에서 생성된 메시지에 대한 정보를 분석하고 사운드 엔진 성능에 대한 정보를 모니터링할 수 있다. 상단 Layouts 탭을 클릭해서 Profiler를 열거나, F6 단축키를 누른다.

  • 좌측 상단의 CaptureLog뷰를 사용하면 게임에서 생성되는 정보를 표시할 수 있다. 이 정보에 접근하려면 실행 중이였던 게임을 Wwise에 연결해야 한다.

Profiler 레이아웃

Cursor Time 디스플레이의 오른쪽에 있는 Connect to Remote Platform 버튼을 클릭합니다.

➡️ <Wwise Sound Engine을 사용하는 게임>이 네트워크 내에서 실행 중인 모든 컴퓨터의 목록이 표시된다. 이 목록에 포함된 컴퓨터들은 Wwise 저작 애플리케이션과 통신할 수 있는 환경을 갖추고 있다. 이 목록에는 사용자의 컴퓨터도 반드시 포함되어야 한다.

Connect to Remote Platform 버튼

클릭 후 Connect!

➡️Start capture on connect(연결과 동시에 캡처 시작) 체크 상자가 선택되었기 때문에 창이 닫히면 툴바에서 캡처 버튼이 빨간색으로 변하고 그 옆으로 카운터가 시간을 재기 시작한다. 캡처는 Wwise Sound Engine에서 전달되는 게임 플레이어와 관련된 정보를 실시간으로 기록하는 과정으로, 게임 사운드를 개발하는 데에 귀중한 에셋이다.

 

Cube 게임으로 돌아간 뒤 공격을 해보자... Cube는 아래와 같이 Samples에서 찾을 수 있다.

Capture Log에서 Cube가 사운드를 생성하는 데 필요한 파일과 정보를 찾을 수 없었음을 표시하는 메시지가 빨간색과 노란색으로 표시되고 있다. 그 이유는 지난 설치 과정에서 그 파일들을 삭제했기 때문이다.


그리고 Wwise로 돌아가서 Capture Log를 확인해보면 Capture Log 뷰에서 얼음 보석이 던져졌을 때 Cube가 Wwise로 정보를 전송함을 확인하는 정보를 몇 줄 볼 수 있다.

 

게임에 연결되었을 경우 일부 Wwise 매개 변수(parameter)는 조정할 수가 없다. 그렇기 때문에 Capture Log에서 원하는 정보를 얻은 후 게임과 연결을 해제해야 한다. 툴바에서 Remote Platform 버튼을 클릭합니다.


캡처가 중단되며 Wwise가 게임과의 연결을 해제한다. 이제 무슨 일이 일어났는지 분석할 수 있다.

표시된 정보는 Wwise가 수신한 메시지를 처리할 방법을 모르기 때문에 오류가 일어났음을 말한다. 일반적으로 '게임 호출 (Game Call)'이라고 불리며 트리거할 수 있는 호출 유형은 다양하다. (나중에 각 다른 유형의 호출에 대해 자세히 배우겠지만, 지금은 오류 설명을 좀 더 자세히 살펴보자)

"Description"을 보면 Event라는 개념이 나오는데... Event는 게임 엔진이 Wwise 오디오 엔진에 보내는 호출로, 게임에서 일어난 상황을 알린다. 주로 사운드 트리거, 속성 변경, 재생 중인 사운드 정지 등에 사용되며, 목적을 명확히 하기 위해 이름을 붙일 수도 있다.

  • 예를 들어, 'Fire_IceGem_Player'라는 이름은 이 Event가 플레이어가 얼음 보석을 던지는 행동과 관련되어 있음을 나타낸다.

Local Player를 지정하는 Game Object Name 열이 보인다. 이 열은 게임에서 특정 객체가 메시지와 연결되어 있음을 알려준다.

  • 예를 들어, 게임 속에서 얼음 보석 스킬을 가진 캐릭터가 여러 명이라면, 게임 엔진은 누가 얼음 보석을 던졌는지 알아야 적절한 소리를 재생할 수 있다. 만약 50미터 떨어진 몬스터가 얼음 보석을 던졌다면, Wwizard가 던졌을 때와 같은 볼륨으로 소리가 나면 안 된다. 이것에 대한 관련 구현 방법은 추후 공부해보자.

2.2 Event 만들기

프로그래머는 게임에서 발생한 상황을 Wwise에 알리기 위해, 오디오 반응이 필요한 모든 항목에 코드 몇 줄을 추가한다.

이렇게 추가된 코드는 게임 호출(Game Call)이라고 하며, 예를 들어 '여기 얼음 보석이 던져졌어요'와 같은 간단한 메시지를 전송한다. 실제로는 이 메시지가 문자열이나 숫자의 형태로 전송되며, 오디오 엔진이 이를 수신하면 게임 오디오 디자이너가 설정한 다양한 작업이 실행된다.

 

이를 위해 가장 먼저 해야 할 일은 Event를 만들어 Wwise가 Game Call을 수신할 수 있도록 준비하는 것이다. 이는 마치 게임 엔진과 오디오 엔진 간에 캐치볼을 하는 것과 같은 원리다. 게임 엔진이 던지는 볼이 바로 게임 호출(Game Call)이며, Event는 Wwise가 특정 게임 호출을 수신할 수 있도록 설계된 객체 유형이다. 중요한 점은 Wwise가 Game Call을 수신하려면 동일한 이름으로 지정된 Event가 반드시 필요하다는 것이다.

 

 


🔗참고 자료

 

 

audiokinetic 공식 사이트

 

Courses

Audiokinetic - The global leader in interactive audio technology.

www.audiokinetic.com

 

'Dev. > Wwise 와이즈' 카테고리의 다른 글

상태에 따른 음향 변화  (0) 2025.05.19
RTS 사운드 구현  (0) 2025.05.19
Wwise 오디오 최적화  (0) 2025.05.19
Wwise와 Unreal 연동 가이드(3) : 연결  (0) 2025.05.09
[TIL_250503] Wwise와 Unreal 연동 가이드(2) : Event 만들기  (0) 2025.05.03
'Dev./Wwise 와이즈' 카테고리의 다른 글
  • RTS 사운드 구현
  • Wwise 오디오 최적화
  • Wwise와 Unreal 연동 가이드(3) : 연결
  • [TIL_250503] Wwise와 Unreal 연동 가이드(2) : Event 만들기
raindrovvv
raindrovvv
raindrovvv 님의 블로그 입니다.
  • raindrovvv
    raindrovvv 님의 블로그
    raindrovvv
  • 전체
    오늘
    어제
    • 분류 전체보기 (100) N
      • Dev. (93) N
        • UE 언리얼 엔진 (48)
        • Unity 유니티 (0)
        • Wwise 와이즈 (7) N
        • 게임 네트워크 (8)
        • 그래픽스 Graphics (22) N
        • 프로젝트 (4)
        • 기타 개발 관련 (4)
      • Computer Science (0)
        • 하드웨어 HW (0)
        • 소프트웨어 SW (0)
        • 통신 (0)
        • 데이터 (0)
      • 블로그 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    언리얼엔진
    게임
    셰이더
    게임개발
    네트워크
    오디오미들웨어
    게임네트워크
    AI
    Unreal
    게임음향
    UE
    게임사운드
    Wwise
    와이즈
    고라니
    머티리얼
    그래픽스
    TA
    unrealengine
    언리얼
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
raindrovvv
[TIL_250425] Wwise와 Unreal 연동 가이드(1) : Wwise 기본 세팅
상단으로

티스토리툴바