다음 섹션들은 Wwise 버전 2022.1.1에서 2022.1.2 사이에 변경 및 개선된 내용을 다루고 있습니다.
플랫폼 전용 정보는 여기에서 확인할 수 있습니다:
이전 버전을 보시려면 이전 버전 릴리즈 노트 를 참고하세요.
API 개선 사항
- WG-63183
AK::MemoryMgr
의 새로운 API 함수인 AK::MemoryMgr::TrimForThread 추가. 이 함수를 이용해 스레드가 비활성 기간으로 들어가면 게임 통합이 추가적으로 스레드 로컬 리소스를 비울 수 있게 되었습니다. Wwise의 내장 메모리 할당자인 rpmalloc의 경우, 스레드에서의 모든 지연 free 작업을 완료하고 나중에 다른 스레드에서 재사용하도록 스레드 로컬 힙을 전역 저장소로 반환합니다. 이 함수는 CAkAudioMgr::Perform
가 EventMgr
스레드에서 실행된 후, 그리고 CAkThreadedBankMgr
가 BankMgr
스레드에서 명령들을 처리한 후 호출됩니다. AK::JobMgr
작업자 함수를 실행하고 돌아온 경우와 같이 게임 통합에서 이 함수를 가끔 호출할 것을 권장합니다.
작동 방식 변경 사항
- WG-63468 WwiseConsole로 generate-soundbank 작업을 사용할 때, 해당 옵션이 SoundBank Settings에서 활성화된 경우 소스 컨트롤 작업이 자동으로 처리됨. 명령줄에서 –no-source-control 플래그를 이용하면 이 소스 컨트롤 작업을 비활성화할 수 있습니다. 소스 컨트롤 설정을 위해 필요한 경우 User Project Settings이 로드됩니다.
성능 개선 사항
- WG-57458
AK::JobMgr
에 있는 작업 스케줄이 조정되어 특정 작업이 모든 종속성을 만족할 경우 큐에 추가후 나중에 다시 큐에서 제거하는 방식 대신 곧바로 실행하도록 설정됨. 특히 작은 버스가 많은 보이스 그래프를 실행할 때 작업 관리자 시스템의 오버헤드를 줄이고, 많은 경우의 캐시 활용 개선으로 인해 작업 실행이 개선되었습니다.
- WG-60124 전체 사운드 엔진 틱, 즉
CAkAudioMgr::Perform
실행이 이제 AkJobType_AudioProcessing
타입 작업으로 실행됨. Wwise Job Manager를 지원하도록 설정된 게임 통합의 경우, AkJobType_AudioProcessing
타입 작업자가 하나만 있어도 AK::EventMgr
스레드에서 실행되는 거의 모든 작업을 제거하고, 대신 게임 엔진 스레드 풀에서 전체 사운드 엔진 틱이 실행되도록 합니다. 예를 들어, 게임 엔진 스레드 풀에서 수행되는 작업에서 AK::EventMgr
스레드가 선점해 발생할 수 있는 성능 이슈를 해결할 수 있습니다. 이에 따라 게임 엔진 성능의 전반적인 일관성이 향상됩니다.
- WG-63532
AK::JobMgr
가 아무 내용이 없는 작업이 발송해도 작업자 요청이 발행되지 않음. 이 개선을 통해 특히 실제 아무런 작업 내용 없이 _CallGlobalExtensionsAsync
에 의해 초기화되는 수많은 작업자 요청을 피할 수 있게 되었습니다.
기타 수정 사항
- WG-62516 런타임에서 Spatial Audio 프로파일링에 소요되는 CPU 시간이 별도의 Spatial Audio CPU 타이머 범위로 간주됨. 이전에는 "Global Extension"으로 간주되었었음.
- WG-63055 Visual Studio 2022를 17.4.2 버전으로 업데이트.
- WG-63517 wp.py 빌드 명령을 실행하면 MSBuild 처리에 CL_MPCount 가 전달인자로 포함됨.
버그 수정
- WG-57678 수정됨: (Spatial Audio) 한 표면의 리플렉션이 우연히 다른 표면과 정확히 일치하는 경우 끊기거나 불안정함.
- WG-61025 수정됨: AK Convolution 플러그인 IR 응답 시간을 0 프레임 시간대로 설정할 경우 Wwise Authoring에서 발생하는 크래시.
- WG-61974 수정됨: 타임라인을 스크러빙하면 Voice Inspector가 가끔 감쇠(attenuation) 기여도를 표시하지 못함.
- WG-62515 수정됨: (Spatial Audio) Spatial Audio를 프로파일링할 때 CPU 사용량이 치솟음.
- WG-62774 수정됨: (Spatial Audio) 회절(diffraction) 각도가 매우 작은 경우 2차 또는 그 이상의 회절 경로가 잘림.
- WG-62988 수정됨: Profiler에서 Profiler 세션(.prof 파일)을 로딩할 때 발생할 수 있는 크래시.
- WG-63307 수정됨: (Spatial Audio) 몇몇 공간이 떨어진 포털을 통과하는 직접 경로가 사라지는 경우가 있음.
- WG-63330 수정됨: WG-61727 수정 사항으로 인해 의도하지 않은 작동 변경이 Wwise 2021.1.11과 2022.1.1에서 발생. 특정 환경에서 양수 페이드 상쇄값으로 된 도착지 전환이 있는 Music Switch Container에 영향을 끼침.
- WG-63422 수정됨: 요청이 없는데
AkArray::Reserve
의 크기가 가끔 커지는 현상.
- WG-63475 수정됨: Paste Properties를 이용해 오브젝트 목록을 하나 이상의 대상 오브젝트로 복사할 때 발생할 수 있는 크래시.
- WG-63493 수정됨: Version Control 작업이 SoundBank Generation 동안 타임아웃 됨.
- WG-63495 수정됨: 하나 이상의 Work Unit을 다시 로드한 후 Wwise Profiler 뷰가 깨끗이 삭제되지 않아 크래시가 발생할 수 있는 문제.
- WG-63519 수정됨: 아무 프로젝트도 열려있지 않은 경우 WAAPI 함수 호출이 느림.
- WG-63577 수정됨: (Spatial Audio) 균일하지 않은 척도(scaling)가 있는 지오메트리에서 리플렉션의 회절 각도가 올바르지 않게 계산됨.
- WG-63580 수정됨: Media Size 프리뷰가 Sound 오브젝트에 보이지 나타나지 않음.
- WG-63764 수정됨: 보이스 그래프에 피드백 보조 센드 연결이 존재하면 Wwise Profiler Voice Graph에서 일부 피드백이 아닌 보조 센드 연결이 역방향이 됨. 이로 인해 오디오 렌더링 중에 믹싱이 부정확하거나 비결정적이 됨.
- WG-63769 수정됨: 현재 Wwise에서 검사중인 Music Switch Container가 사용하는 State Group이나 Switch Group이 포함된 Work Unit를 다시 로드할 때 발생하는 크래시.
- WG-63862 수정됨: Attenucation의 RTPC 곡선을 연결된 상태에서 변경할 경우 Wwise Authoring에서 발생하는 크래시.
- WG-63880 Fixed: Voice Inspector doesn't snap to proper time when moving time cursor backwards with the timeline zoomed in.
- WG-63882 수정됨: 메모리가 부족한 상황에서 엔진을 종료할 때 AkPath.cpp 에서 발생하는 크래시.
- WG-63887 수정됨: Auto-Defined SoundBank의 SoundBank Editor 단축키 메뉴 요소인 Open Containing Folder가 .bnk 파일의 항목을 포함하지 않음.
커뮤니티에 보고된 버그 수정
- WG-58892 수정됨: 리스너의 뒷쪽으로 0이 아닌 확산(spread)과 집중(focus)이 있는 모노 사운드의 패닝의 부정확성.
- WG-60199 수정됨: Recorder 플러그인과 같이 매개 변수로 문자열을 사용하는 플러그인을 사용할 때 연결시 발생할 수 있는 크래시.
- WG-61907 수정됨: 지오메트리가 유효하지 않은 삼각형을 포함했을 때 발생하는 크래시.
- WG-62393 수정됨: Stereo Delay Effect 플러그인이 높이 채널에 원본 게인(dry gain)을 적용하지 않음.
- WG-63034 수정됨: Mastering Suite 초기화가 실패할 때 발생하는 전체 오류가 보고됨. 이번 Wwise 버전에서는 유효하지 않은 채널 구성이 보고되는 것으로 변경되었음.
- WG-63088 수정됨:
AK::SoundEngine::PostMIDIOnEvent()
호출이 일부 할당된 메모리를 배포하는 데 실패함.
- WG-63242 수정됨: WwiseConsole이 있는 SoundBank를 생성할 때와 생성된 파일을 Source Control로 추가하는 옵션이 활성화된 경우 Wwise가 멈추는 현상.
- WG-63247 수정됨: SoundBank를 연속적으로 생성하면 Soundseed Grain 플러그인의 원본 파일이 지워지는 경우가 있음.
- WG-63270 수정됨: Reflect가 내부 Wwise 사운드 엔진 함수를 호출할 때 Wwise 음원이 변경된 경우 호환성 이슈가 발생할 수 있는 문제. 이 내부 함수 호출은 공용 API 호출로 대체되었습니다.
- WG-63379 수정됨: Motion 플러그인 알림이 프로젝트 로드에 표시됨.
- WG-63425 수정됨: AkConversionTable 크래시 (RTPC 지원).
- WG-63465 수정됨: 사용자 정의 SoundBank를 새로 생성하는 버튼이 없어짐. 이 버튼은 Wwise 2021.1 버전의 버튼과 유사한 형태로 다시 복구되었습니다.
- WG-63512 수정됨: IAkPluginMemAlloc.h 헤더 파일에서 발생하는 assert로 인해 디버그 문자열이 최적화된 대상에 표시됨.
- WG-63545 수정됨: 다음의 환경에서 UnloadBank 호출시 교착 상태 발생.
- UnloadBank 호출시 사운드가 전환 효과와 함께 중지됨.
- UnloadBank 호출과 동일한 프레임 안에서 같은 사운드가 일시 정지됨.
- WG-63585 수정됨: (Spatial Audio) Spatial Audio 풀에서 천천히 계속 발생하는 메모리 누수.
- WG-63588 수정됨: Music Event Cue와 Event 사이 순환 레퍼런스가 있는 프로젝트를 열 때 발생할 수 있는 크래시.
- WG-63691 수정됨: 버전 컨트롤 통합이 활성화된 List View Size Previews를 사용할 때 발생하는 크래시.
- WG-63749 수정됨:
AK::SoundEngine::ExecuteActionOnEvent
호출을 하면 Event의 Action 대상과 관계 없이 활성화된 모든 MIDI 요소에 대해 작동함 (AK::SoundEngine::PostMIDIOnEvent
로 시작).
- WG-63860 수정됨: 긴 버전 컨트롤 작업이 진행중일 때 Wwise 프로젝트를 닫으면 발생하는 크래시.