使用IsaacSim创建一个Unity项目。
IsaacSim Unity3D具有自定义项目设置和包依赖项。用Isaac创建新项目的最简单方法是从示例项目中复制Assets、Packages和ProjectSettings文件夹:
接下来,打开一个新项目:
注意
2018 . 3 . 11f 1如果安装了其他版本的Unity,上述命令中的目录可能会有所不同。
等待项目加载(大约10分钟)。完成后,您应该会在编辑器中看到一个空场景:
首先,您需要创建一个新场景:
接下来,您可以向场景中添加随机障碍物:
您也可以在场景中放置自己的模型。确保模型附有碰撞器,最小高度为0.7m,这样卡特上的模拟激光雷达就能看到它们。
如下图所示,改变主摄像机的位置和旋转角度,鸟瞰场景。如果你现在按Play,你应该会在游戏视图中看到一个静态的场景。按停止。
现在,您可以将机器人添加到场景中:
注意
如果你现在按下Play,你会看到游戏立即暂停,并显示错误信息“Wake Up前访问IsaacNative Singles”,因为你还没有添加加载Isaac SDK C API和运行NavSim应用程序的“isaac.alice”小部件。
现在,当您按下Play时,模拟应该开始,没有错误。
打开终端,转到Isaac SDK文件夹,然后使用我们为此场景保存的地图运行导航应用程序:
在Chrome浏览器中打开Isaac Sight,网址为http://localhost:3000/:
您应该看到Carter正确定位并接收了激光雷达和RGBD相机数据。但是,由于目标行为设定为“姿势”,但目标姿势没有从模拟中发布,因此它保持静态。
在视线中,转到,将“desired_behavior”从“pose”更改为“random”,然后按提交。您应该看到目标姿势在地图视图中以红色显示,并且Carter沿着计划的路径移动。应用程序配置& gt目标.目标_行为
我双击示例包中的Unity场景将其打开,然后弹出以下消息:
选择取消。相反,将场景图标拖动到层次中,并删除前一个场景。
我按下播放键,Unity编辑器崩溃。
在Unity Editor控制台选项卡中,在单击播放之前检查是否有任何错误。启用错误暂停,如果Unity捕捉到任何错误,将暂停游戏。最后,如果您使用-logFile标志启动Unity Editor,Unity会将日志输出到终端。检查终端日志中是否有错误:一个常见的原因是Unity中运行的Isaac SDK应用程序由于缺少配置文件而崩溃。
我按下Play,得到很多错误,比如“无法调用IsaacIsaacCreateApp”
Unity无法加载isaac sdk c api库。需要//packages/nav sim/apps:nav sim-pkg从Isaac SDK部署到。例如,您将使用此命令部署到示例项目:[your project]/assets/streaming assets。
我在Unity中添加了一个IsaacComponent,但是我没有从模拟器中接收到数据。
检查Unity中IsaacComponent中的Isaac通道名称是否与接收Isaac应用程序上的通道名称相匹配。此外,有时Unity编辑器会将特殊字符/x13插入通道名称字符串。/x 13 *中搜索并删除的任何实例。unity场景文件或*中的文件。预设文本编辑器/IDE。