​可实例化资产

强化学习通常需要在大型模拟场景中使用同一机器人的多个克隆进行训练。随着我们在仿真环境中添加越来越多的机器人,每增加一组机器人和网格资产,内存消耗也会增加。为了减少内存消耗,我们可以利用 USD 的 功能将同一机器人的不同副本共享的通用网格标记为可实例化。

这样一来,机器人的每个副本都将引用单个网格副本,从而避免了在场景中创建相同网格的多个副本的需要,从而减少了整个仿真环境中的内存使用量。

1. 学习目标

在本教程中,我们将展示如何在 Isaac Sim 中创建可实例化资产。我们会的

  1. 解释使资产可实例化的要求

  2. 使用 URDF 和 MJCF 导入器创建可实例化资产

  3. 显示将现有资产转换为可实例化资产的实用程序方法

10-15分钟教程

2. 入门

3. 可实例化资产的层次结构要求

USD 禁止在实例化素数的后代上修改素数的属性。因此,我们通常只对机器人资产的网格素数执行实例化,因为在仿真过程中,网格上的属性在不同环境中不会有所不同。但是,在仿真过程中,当每个环境中的机器人以不同的方式移动时,网格的变换可能会有所不同。因此,我们必须在资产树定义中的特定结构中定义机器人层次结构的拓扑结构,以便可实例化标志采取行动。

要将资产中的任何网格或基元几何素标记为可实例化,网格素数需要存在父 Xform 素数,该素数将用于添加对包含网格素定义的主 USD 文件的引用。

例如,不能将以下定义标记为可实例化:

World
  |_ Robot
       |_ Collisions
               |_ Sphere
               |_ Box

相反,必须将其修改为:

World
  |_ Robot
       |_ Collisions
               |_ Sphere_Xform
               |      |_ Sphere
               |_ Box_Xform
                      |_ Box

原始球体和盒质上存在的任何参照都必须移动到Sphere_Xform和Box_Xform素数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值