news 2026/8/7 2:49:13

开发功能开关-–-behaviac

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
开发功能开关-–-behaviac

原文

behaviac的运行时提供有核心的更新行为树的功能,在其之上,还有logging,热加载,连调等调试功能。这些调试功能只是‘开发’功能,在游戏发布后实际上是不需要的。

除了可以在config.h中定义BEHAVIAC_RELEASE宏为1来完全使‘开发功能’不被编译外。也可以保留这些‘开发’功能但只是使用下面所列的‘开关’来关闭或者打开某些功能。

具体可以参考优化及性能

Cpp

namespacebehaviac{classBEHAVIAC_APIConfig{public:staticboolIsProfiling();staticvoidSetProfiling(boolbEnabled);//logging是否打开staticboolIsLogging();staticvoidSetLogging(boolbLogging);//logging打开的情况下,是否每次logging的时候都FlushstaticboolIsLoggingFlush();staticvoidSetLoggingFlush(boolbFlush);//socket连接是否打开,只有打开socket连接,连调功能才会支持staticboolIsSocketing();staticvoidSetSocketing(boolbSocketing);//是否是阻塞模式,当时阻塞模式的时候,游戏会阻塞,等待编辑器的连接,//只有成功建立连接后,游戏才继续运行staticboolIsSocketBlocking();staticvoidSetSocketBlocking(boolbBlocking);//游戏和编辑器建立连接的时候使用的端口staticvoidSetSocketPort(unsignedshortport);staticunsignedshortGetSocketPort();//热加载是否打开staticboolIsHotReload();staticvoidSetHotReload(boolbHotReload);};

具体的代码可以查看behaviac/base/workspace.h

Unity

C#下同名函数的意义和Cpp一样,此外,IsSuppressingNonPublicWarning是个用来控制是否输出非public成员的警告。

IsSuppressingNonPublicWarning为true的时候,Agent的成员(field,method,property)如果不是public的,则输出警告信息,从而可以修改其为public,这样的话,当使用导出格式为c#时其效率就是最高的,而且没有GC Alloc。

具体的代码请查看behaviac/runtime/workspace.cs

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/5 9:40:35

【求解释】智子递归架构:基于互补递归与河洛调控的智能系统框架

智子递归架构:基于互补递归与河洛调控的智能系统框架——简化符号、清晰表述与数学实现研究者:桑干河报告版本:1.0发布日期:2023年10月---摘要智子递归架构是一种基于二值递归单元(智子)、互补对称性与全局…

作者头像 李华
网站建设 2026/8/7 2:21:52

异步SAR Simulink模型及其在MATLAB仿真中的应用

异步SAR simulink模型(和virtuoso电路模型很像,精度自己可以改)。 做MATLAB仿真,包括zoom或者其他混合架构adc可以用到这个模型。在玩ADC设计的时候,异步SAR结构就像个宝藏男孩——速度快还省电,但要把行为…

作者头像 李华
网站建设 2026/8/5 10:52:29

Go 语言结构体

Go 语言中数组可以存储同一类型的数据,但在结构体中我们可以为不同项定义不同的数据类型。 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。 结构体表示一项记录,比如保存图书馆的书籍记录,每本书有以下属性: Titl…

作者头像 李华
网站建设 2026/8/6 19:41:38

C语言图论:最小生成树算法

本文献给: 已掌握图论基础,希望理解如何在带权连通图中找到最小生成树的C语言学习者。本文将系统讲解两种经典的最小生成树算法。 你将学到: 最小生成树问题的定义与核心概念Prim算法:从顶点出发,逐步扩张生成树Kruska…

作者头像 李华
网站建设 2026/8/5 20:45:04

探索 BMS 仿真:搭建电池管理系统的 Matlab 模型

BMS仿真,电池管理系统,整个BMS的matlab仿真模型。 包含限位,EKF-SOC,均衡,充点电控制,冷却风机,充电控制,开机自检功能。 SOC:State of charge,电池剩余电量百…

作者头像 李华