• 注册
欢迎加入behaviac Q&A网站。behaviac是腾讯开源组件https://github.com/TencentOpen/behaviac 官方网站:http://www.behaviac.com/,提供各种文档和教程及手册 为了您及时的获得您最新问题的评论或者回答,请提供并验证您的邮箱

LINUX下 生成demo_running.xml的问题

3 喜欢 0 不喜欢
39,868 浏览
在LINUX 下运行DEMO的代码,程序成功运行,但是就是生成不了/test/demo_running/behaviac/这个目录   和demo_running.xml这个文件,这是怎么回事,

是因为在LINUX下路径不能这么写么

behaviac::Workspace::GetInstance()->ExportMetas("../test/demo_running/behaviac/demo_running.xml");
最新提问 3月 14, 2016 用户: 匿名

1个回答

0 喜欢 0 不喜欢
 
已采纳
请使用Debug版试试看。

请注意生成的位置。可以用绝对路径试试看。
最新回答 3月 14, 2016 用户: jonygli (57,510 分)
采纳于 3月 14, 2016 用户:jonygli
我自己写的一个主程序   调用behaviac::Workspace::GetInstance()->ExportMetas("/home/hadoop/test/demo_running.xml");
主程序能够编译和执行

然后调试
    cout<<"begin file"<<endl;
    behaviac::Workspace::GetInstance()->ExportMetas("/home/hadoop/test/demo_running.xml");
    cout<<"End file"<<endl;
在hadoop主文件夹下我已经建立好了test这个文件夹
begin file和End file都能输出
改成绝对路径也不能生成demo_running.xml
这是怎么会事
bool InitBehavic(behaviac::Workspace::EFileFormat ff)

这个方程里的函数都运行不了

我把WINDOW下的../test/demo_running/behaviac/exported里的文件都拷贝到LINUX下运行

程序没有按我设计的方式运行,但是在WINDOWS下运行没有问题

把代码拷贝到LINXU下就不按我设计的步骤执行

begin file
End file
UpdateLoop
frame 1
 press any key to exit 1

只是出现一个frame 1程序就停止了
这个问题我在检查。看是否能够重现。
我可以把代码传给你么

我加QQ群了
还有个问题,我只是个新手,麻烦你了

如果我在LINUX生成demo_running.xml成功后,必须把他导入到WINDOWS下的BehaviacDesigner的主程序里么,然后BehaviacDesigner生成的XML文件再导回linux下我的主程序,然后运行么
发现是cmake配置里的一个问题。已经fix,多谢反馈。

请下载或克隆:https://github.com/TencentOpen/behaviac。

另外,是的,

1. 需要在游戏(链接了behaviac的可执行程序里)导出元信息。

2. 在编辑器里使用1里导出的元信息

 

可以访问获取更多解释:http://www.behaviac.com/docs/zh/articles/overview/#behaviac
linuxAI: /home/hadoop/behaviac/src/base/workspace.cpp:213: static behaviac::Workspace* behaviac::Workspace::GetInstance(const char*): Assertion `0' failed.
已放弃 (核心已转储)

1.用新的源程序编译build后,我的(主程序)调用新生成的库文件,就产生以上错误,

2.编译运行源文件都没有问题

3.编译完成后   调试运行我的(主程序)到

behaviac::Workspace::GetInstance()->SetFilePath("/home/hadoop/test/");

这句话事程序就出错了

image

如图,213行说明你的版本有问题。你可能lib和程序一个是debug,一个是release。它们需要是一致的,要么都是debug,要么都是release。

对了,你的程序的make文件里需要添加_DEBUG的定义。

 

恩  是这个问题

这下在LINUX下的程序调通了
...