最近要做游戏ai,看了一下行为树的东西,因为用的java,所以主要看了jbt:
https://github.com/gaia-ucm/jbt
这玩意分编辑器JBTEditor和核心库JBTCore两部分。在JBTEditor里边编辑好之后,导出xml文件;项目代码通过JBTCore库加载xml,然后驱动树的执行。
嗯,之所以用开源,主要就是懒的搞编辑器了,先玩一下JBTEditor。
不走不知道,一走全是坑。JBTEditor是基于Eclipse RCP开发的,没做过这方面的,只能摸着石头过河。
先下载一个最新版的Eclipse
按照官方说明,导入工程,打开"bteditor.product",然后"Launch an Eclipse application",干脆的挂掉。
一头雾水,百度的也是不着边际。初步怀疑,jdk版本、eclipse版本的问题,因为这个项目2013年以后就没再更新过。
挨个下载了jdk1.7,jdk1.6,eclipse2013版本,eclipse2014版本。。。各种组合,全部失败。
右键"bteditor.product","Run as","Run configurations",
勾上之后,启动的时候会检查插件依赖情况,或者直接点击右边的"Validate Plug-ins",也会报告缺失情况。
根据提示,勾上"org.eclipse.emf.*"以及"org.eclipse.ui.views.*"这些插件,再次启动,成功!
编辑器最终是要交给策划同学使用的,总不能让他们开着ide干活,导出可执行文件看看:
右键"bteditor.product","Export",
选择"Eclipse product","next",
指定输出目录即可,别的不改,"Finish"
执行editor\eclipse\JBTEditor.exe,嗯嗯,又报错了...
研究了半天,发现plugin有个加载时机的问题,也就是所谓startlevel,
这里用"Add Recommended"就可以加上正确的startLevel,然后导出的exe就可以用了。
总结一下吧:
- 用Eclipse for RCP导入JBTEditor工程
- 打开“bteditor.product”,“Configuration”选项卡里边调整plugin的StartLevel
- 切回“Overview”,“Launch an Eclipse application”,会报一次错
- 进入启动配置项里,勾上需要的插件,再次启动则成功
- 导出可执行文件
先写到这里,后续下回分解。