버전
menu

Cube와 사운드 엔진 통합 이해하기

Wwise 사운드 엔진을 Cube에 통합할 때 수행되는 작업은 다음과 같습니다:

Wwise용 Cube 준비하기

Cube의 개발자는 Wouter van Oortmerssen 입니다. Cube는 웹사이트(http://cube.sourceforge.net/)에서 쉽게 다운로드할 수 있는 오픈 소스 싱글/멀티 플레이어 1인칭 슈팅 게임입니다. 웹사이트에서 다운로드할 수 있는 버전과 비교할 때, Wwise 통합을 위해서 Cube는 다음과 같이 수정되었습니다:

  • Wwise 사운드 엔진을 사용하도록 기존 사운드 코드를 다시 작성했습니다.

  • 오디오 콘텐츠가 Wwise 프로젝트로 이동되었습니다.

  • 다른 라이브러리(SDL, SDL_image, libpng)에 대한 종속성이 제거되었습니다.

  • 추가적인 오디오(예: 발자국 소리)가 추가되었습니다.

  • 위와 같은 변경 사항을 위해 일부 게임 구성 및 콘텐츠 파일이 수정되었습니다.

게임 오브젝트 등록하기

두 종류의 게임 오브젝트가 사운드 엔진에 등록되었습니다.

  • 기본 구조체에 대한 포인터. 플레이어, 몬스터, 발사체 등 게임 세계에서 움직이는 오브젝트들이 이에 속합니다.

  • 64-127 번호의 더미 게임 오브젝트. 움직이는 오브젝트에 연결되지 않는 3D 사운드(예: 아이템 스폰)가 이에 속합니다.

오디오 통합하기

오디오 통합 코드의 핵심은 <WwiseRoot>\Cube\cube_source\src 폴더에 위치한 다음과 같은 파일에 있습니다.:

  • Sound.cpp—사운드 엔진에 접근하는 모든 코드를 포함합니다.

  • Protos.h의 사운드 섹션 - 선언된 퍼블릭 함수를 포함합니다.

다음 유형의 사운드가 통합 과정에 포함되어 있습니다.

  • 몬스터 플레이 사운드:

    • 각 캐릭터에는 고통, 사망, 발자국 이벤트가 일어날 수 있습니다. (monster.cpp의 Monstertypes[]를 참조.)

    • 발자국 이벤트는 monsterfootstep() 함수에서 게시되고, 발자국 Switch Container를 구동하기 위해서 캐릭터가 밣고 있는 텍스처에 해당하는 'Material' 스위치도 설정합니다.

    • 아이템은 줍기 관련 이벤트가 있습니다. (entities.cpp의 itemstats[] 참조.)

  • 마법 사운드:

    • 각 유형의 마법에는 관련된 이벤트가 있습니다. (weapon.cpp의 guns[] 참조)

    • 발사체에는 터지는 효과와 관련된 이벤트(S_FEXPLODE, S_RLHIT)가 있습니다.

    • 쿼드 데미지가 활성화된 동안 얼음 보석을 던지면 S_ITEMPUP 이벤트도 게시됩니다.

  • 네트워크 사운드:

    • 특정 이벤트는 네트워크 플레이를 위해서 서버로 이동해야 하는데, 이는 snd_clientevent()에 의해 처리됩니다.

  • 이 외의 사운드:

    • 게임 플레이 중에 발생하는 다른 모든 사운드 이벤트를 찾으려면 코드 베이스에서 snd_event() 호출을 검색하세요.

새로운 스크립팅 명령 추가하기

사운드를 관리하는 데 도움이 되도록 다음과 같은 사운드 관련 명령을 사용할 수 있습니다. 이러한 명령은 .cfg 스크립트 파일에서 사용할 수 있습니다:

  • akevent <string>: 로컬 플레이어 게임 오브젝트(player1)에 이벤트(이름별)를 게시합니다.

  • soundvol <int>: 사운드 볼륨(0-255)을 설정합니다.

  • musicvol <int>: 음악 볼륨(0-255)을 설정합니다.

  • voicevol <int>: 음성 볼륨을 설정합니다(0-255).

  • Texturematerial <int> <string1> <string2>: 이는 기본적으로 'texture'와 동일한 명령이지만 발자국 재질과 관련된 추가적인 매개 변수를 포함합니다.


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요