unity behaviac 卡顿问题
项目一直使用behaviac进行AI逻辑处理,最近发现人物在移动的时候有规律性的卡顿。
打开性能监视器如图。

发现占用cpu的是behaviac中的update所产生,而且GC也很高。
定位的代码如图:

查阅了behaviac的官方资料找到了问题,官方链接在这里
http://www.behaviac.com/performence/
里面说道:
定义BEHAVIAC_RELEASE,从而不编译诸如logging、socketing、热加载等开发功能,提供最高效率,也不支持连调功能。
- C++下,在_config.h中定义BEHAVIAC_RELEASE为1
- C#下,在Assets目录下的smcs.rsp文件中,定义BEHAVIAC_RELEASE
- 如果想选择打开或关闭调试功能而不是完全的关闭,则不需要修改任何关于BEHAVIAC_RELEASE的定义,通过behaviac::Config::SetLogging和behaviac::Config::SetSocketing来控制是否打开logging和socketing。
按照 要求添加宏

然后启动游戏,发现问题解决:

完~

浙公网安备 33010602011771号