今天看啥  ›  专栏  ›  YottaYuan

IsaacSim Unity3D - 工具类

YottaYuan  · 简书  ·  · 2020-03-19 20:46

工具类

本节概述了IsaacSim Unity3D中可用的工具。

地图生成

艾萨克(Isaac)导航堆栈需要2D占用地图才能进行本地化。Map Camera是使用正交相机的深度成像为Unity场景生成此类地图的便捷工具。请按照以下步骤使用“地图摄像头”工具:

  1. 将预制件添加到场景中。 Core package/Prefabs/Sensors/Map Camera
  2. 在“ 检查器” 选项卡中选择GameObject 。
  3. 选择 放置相机 。这将设置相机位置和近/远剪辑平面。远近裁剪平面之间的所有可见网格都在地图中投影为“障碍物”。
  4. 将“游戏”视图切换到“显示2”以预览地图。
  5. 准备就绪后,选择“ 保存地图” 以保存PNG文件和相应的地图配置JSON(适用于Isaac SDK)。

生成地图后,请删除或禁用“地图摄像机”预制件,以避免在运行时渲染地图摄像机。

../../_images/unity_map_generator_1.jpg
../../_images/unity_map_generator_2.jpg

四月标签

AprilTag是机器人技术中常用的可视基准系统。您可以在中找到AprilTag预制件 。这是通过平面网格实现的,平面网格的比例为1:10m x 10m。 Core package/Prefabs

../../_images/unity_apriltag.jpg

可视化

“ isaac.minisight”预制件将Unity中的本地和全局计划可视化。

../../_images/unity_visualization.jpg

建立

请按照以下步骤构建场景:

  1. 在Unity编辑器中,打开 文件>构建设置
  2. 选择 添加打开场景 以将在Unity Editor中 打开的场景 添加到构建设置。
  3. 点击 构建

这将生成一个<cite style="box-sizing: border-box;"><scene> .x86_64</cite>可执行文件和一个<cite style="box-sizing: border-box;"><scene> _Data</cite>文件夹。运行可执行文件以启动模拟器。如果要移动或复制构建,则需要同时复制“ .x86_64”二进制文件和“ _Data”文件夹。

../../_images/unity_build_settings.jpg
单个二进制文件中的多个场景

IsaacSim Unity3D提供了一些帮助程序功能,可将多个场景构建为一个二进制文件。这些位于BuildHelper和MultiSceneTools脚本中。在Unity Editor窗口中,您还可以使用 Isaac>在文件夹中构建场景, 在项目Asset文件 中选择一个文件夹,以创建包含该文件夹中所有场景的构建。或者,您可以使用 Isaac>在文件中构建场景 来选择一个JSON文件,其中包含当前项目中的场景列表,并创建一个包含所有场景的构建。

使用静态方法

您还可以在BuildHelper脚本中使用静态方法从Unity命令行创建构建。例如,您可以创建 warehouse.json 具有以下内容的文件:

<pre style="box-sizing: border-box; font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace; font-size: 12px; white-space: pre; margin: 0px; padding: 12px; line-height: normal; display: block; overflow: auto; color: rgb(64, 64, 64);">{
“场景” : [
“包/com.nvidia.isaac_sim_samples/Warehouse/Scenes/small_warehouse.unity” ,
“包/com.nvidia.isaac_sim_samples/Warehouse/Scenes/medium_warehouse.unity” ,
“资产
/tutorial.unity ” ]
}
</pre>

然后运行以下命令来创建构建:

<pre style="box-sizing: border-box; font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace; font-size: 12px; white-space: pre; margin: 0px; padding: 12px; line-height: normal; display: block; overflow: auto; color: rgb(64, 64, 64);">bob @ desktop:〜$:Unity / Hub / Editor / 2018.3.14f1 / Editor / Unity -quit -batchmode -logFile -projectPath isaac_sim_unity3d / projects / sample -executeMethod Isaac.BuildHelper.BuildFromFile --sceneFile Warehouse.json </pre>

这将创建一个 warehouse.x86_64 and warehouse_Data 文件, isaac_sim_unity3d/projects/sample/Builds 其中包含上面列出的三个场景。可执行文件中的名称“仓库”与 Warehouse.json 场景文件的名称匹配。请注意,JSON文件中的路径是相对于Unity项目路径给出的,并且程序包中的场景由程序包名称“ com.nvidia.isaac_sim_samples”而不是显示名称“ NVIDIA IsaacSim for Unity3D(示例)”引用。该构建也仅适用于项目中的场景。




原文地址:访问原文地址
快照地址: 访问文章快照