behaviac2.x升级到3.x的步骤及注意事项

发表于2015-11-17
评论0 1.6k浏览
相比2.x版本,3.x版本有若干重大改动:
1. meta browser, 变量的使用更加统一和方便
2. preaction/postaction,任何一个节点都可以添加前置和后置,统一了用法和体验
3. 支持了FSM

用3.x版本,流程是
  1. 用最新的代码把你们的游戏能够编译运行(如果可能首先删除旧的2.x的代码
  2. 导出最新的meta的xml文件
  3. 用最新的3.x的编辑器打开老的workspace,重新导出
  4. 用3中导出的新的文件运行游戏

相比2.x版本,API的改动(请参考test/unittest或test/usertest中的代码):
  • behaviac::Start, behaviac::Stop removed
  • LogManager::SetEnable removed, to use Config::SetLogging
  • World removed
  • SetWorkspaceSettings removed
  • REGISTER_EVENT removed
  • bttick rename to btexec
  • DECLARE_BEHAVIAC_OBJECT_NOVIRTUAL rename to DECLARE_BEHAVIAC_OBJECT_STRUCT
  • REGISTER_METHOD_CHECKRESULT removed
  • RegisterName  -> RegisterIntanceName, UnRegisterName  -> UnRegisterIntanceName 
  • behaviac::Property::Registger, behaviac::Condition::Register  -> behaviac::TypeRegister::Register, UnRegister类似
  • 在所有加载BT之前,调用behaviac::Workspace::GetInstance()->SetFilePath和behaviac:: Workspace::GetInstance()->SetFileFormat来设置路径和格式
  • behaviac::Workspace::ExportMetas修改为behaviac::Workspace::GetInstance()->ExportMetas,其他相应的对Workspace的函数的调用也要类似的修改
  • behaviac::World::GetInstance()->btexec()修改为behaviac::Workspace::GetInstance()->Update()

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

标签: