使用IsaacSim创建一个Unity项目。

本节介绍如何使用IsaacSim创建自己的Unity项目。假设你有Unity编辑器的基本知识。如果您不熟悉Unity,请先阅读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。