Audiokinetic's Community Q&A is the forum where users can ask and answer questions within the Wwise and Strata communities. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

+1 vote
我们在初始化Wwise时,有关AkMemSettings.uMaxNumPools这个变量的含义有一些争议。
我的理解是,这个NumPool跟AkInitSettings.uDefaultPoolSize、AkInitSettings.uMonitorPoolSize、AkStreamMgrSettings.uMemorySize是一个相乘的关系
即,最终Wwise使用的内存池总大小是AkMemSettings.uMaxNumPools*(AkInitSettings.uDefaultPoolSize+AkInitSettings.uMonitorPoolSize+AkStreamMgrSettings.uMemorySize)
不知道我的理解是否正确
in Feature Requests by yu j. (280 points)

1 Answer

0 votes
 
Best answer

Hi,

uMaxNumPools仅仅是最大内存池数量而已,

内存池指的是声音引擎初始化后创建的内存池,

以及读取的包含媒体文件的Soundbank从而产生的内存池,

假设在Unity中您将uMaxNumPools设为32(可在Wwise Initialization Settings中设置)

那么如果您进入场景后调用了20个包含媒体的Soundbank,

加上Wwise声音引擎创建的9个,

也没有超过32这个限制,

因此不会报错,

但只要将32设置到小于20+9您就可以看到错误信息了。

如果您想要降低内存占用,

正确的做法是根据需要缩小内存池大小,

并参照Wwise-251提供的信息对您的游戏进行内存优化。

另外从Wwise2019.2起,

固定大小、预先分配的内存池就不存在了,

所有内存都在选定的全局限值下根据需要进行分配。

参见:

https://www.audiokinetic.com/zh/library/edge/?source=SDK&id=whatsnew_2019_2_new_features.html

https://www.audiokinetic.com/zh/library/edge/?source=Help&id=managing_memory_in_wwise_overview

希望这对您有帮助。

by Hou Chenzhong (Audiokinetic) (6.0k points)
...