Webots用新版本打开旧版本创建的世界

安装了新版本的Webots后用旧版本创建的世界无法打开,并报如下错误

WARNING: 'D:/my_Webots_project/two_wheel/worlds/two_wheel.wbt': This file was created with Webots R2021a while you are using Webots R2023a. You may need to adjust urls for textures and meshes, see details in the change log of Webots R2021b.

ERROR: Please adapt your project to R2023a following these instructions: https://github.com/cyberbotics/webots/wiki/How-to-adapt-your-world-or-PROTO-to-Webots-R2022b

WARNING: 'D:/my_Webots_project/two_wheel/worlds/two_wheel.wbt': This file was created with Webots R2021a while you are using Webots R2023a. You may need to adjust urls for textures and meshes, see details in the change log of Webots R2021b.

 PROTO 节点是描述复杂对象或机器人的强大方式。然而,PROTO 文件不断发展,错误已得到修复,并且鉴于在加载世界时没有固有的方法来定义要使用的特定版本的 PROTO,由于这些变化,旧的模拟不再具有相同的行为方式。此外,通过添加 JavaScript 作为程序 PROTO 节点的模板语言,将 PROTO 文件作为可以动态下载的外部资产打开了,例如,直接从 Web 呈现 PROTO 文件的可能性。

        由于这些原因,从 R2022b 开始,世界使用的所有 PROTO 文件都需要使用EXTERNPROTO 关键字声明。同样,主管在执行模拟期间插入的每个 PROTO 都需要在导入之前声明为 IMPORTABLE EXTERNPROTO。

        直观的体现是用R2022b版本的Webots打开以前建立的世界的时候会显示:

可以看到第一行,请按照以下指示将您的项目调整为R2022b: 然后后面给了一个链接,内容为如何将你的世界和节点转化为新版本适用的。

        想要消除第一行的错误,只需要将你的 .wbt 文件,也就是world文件用记事本打开,注意别用写字板打开,不然保存后编码会变,导致你的文件损坏。建议备份后操作!

然后将第一行的“ #VRML_SIM R2021a utf8 ”中的R2021a改为R2023a,保存即可。

        然后再次用Webots R2023a 打开刚刚的文件,你会发现第一行报错消失了,如果你的世界还添加了PROTO节点,那你会发现还是有报错,如下图所示

 将上述报错复制下来,然后粘贴到记事本上,然后删除前后两端,剩下如图所示的部分:

EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2023a/projects/objects/backgrounds/protos/TexturedBackground.proto"
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2023a/projects/objects/backgrounds/protos/TexturedBackgroundLight.proto"
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2023a/projects/objects/floors/protos/RectangleArena.proto"
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2023a/projects/objects/factory/containers/protos/WoodenBox.proto"

关闭Webots软件,将你刚刚修改过的的 .wbt 文件,也就是world文件用记事本打开,注意别用写字板打开,不然保存后编码会变,导致你的文件损坏。建议备份后操作

复制处理好的部分,插入到‘“ #VRML_SIM R2022a utf8 ”的下一行,如图所示:

 然后保存,你就会没有报错了

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值