国内使用Isaac Sim的时候,最常见的问题是加载不了USD或材质资源,这会导致整个Isaac Sim软件卡住或崩溃,以及无法继续开展项目。比如加载realsense或,最新的Isaac Sim 4.2.0 加载一个激光雷达,都要获取相关传感器usd:
Could not open asset @http://omniverse-content-production
或者开个例子程序,地面都加载不出来等等:
plane = GroundPlane(prim_path=prim_path, name=name, z_position=z_position, physics_material=physics_material)
File "d:/omniverse/pkg/isaac-sim-4.2.0/exts/omni.isaac.core/omni/isaac/core/objects/ground_plane.py", line 111, in __init__
collision_prim_path = get_prim_path(
File "d:/omniverse/pkg/isaac-sim-4.2.0/exts/omni.isaac.core/omni/isaac/core/utils/prims.py", line 612, in get_prim_path
return prim.GetPath()
AttributeError: 'NoneType' object has no attribute 'GetPath'
一、下载Isaac Sim资源
在Omniverse APP里点击 NUCLEUS 或者 Nucleus Navigator,选择自己要下载的 Isaac Sim 资源包:
或者 Nucleus Navigator :
大概不到100个G,做好硬盘准备,如果硬盘不够的话,本地创建一样的目录结构,然后选择性的下载一些资源。
二、运行配置指令
以Windows为例,打开对应版本的isaac sim安装目录,运行下面脚本(注意替换里面的目录)即可:
# 将目录替换成你自己的下载的即可
.\isaac-sim.bat --/persistent/isaac/asset_root/default="D:\omniverse\Downloads\Assets\Isaac\4.2"
三、原理和验证
上面指令的目的是改掉 user.config.json 这个文件,这个文件所在目录在你的DATA PATH下,
如我的在:
D:\omniverse\data\Kit\Isaac-Sim\4.0\user.config.json
后续再运行 isaac-sim.bat 的时候就不需要加上了,因为配置文件已经改掉了。
每次启动Isaac Sim的时候,看到后台命令窗口都会打印加载配置文件,其实修改的就是这个。
Loading user config located at: 'D:/omniverse/data/Kit/Isaac-Sim/4.2/user.config.json'
验证:可以在打开的Isaac Sim里检测一下 Nucleus 配置是不是以及切换到本地了,如图:
后面Isaac Sim用起来就很顺畅了,资源打开也很流畅。
Isaac Sim国内开发不易,欢迎大家加QQ群一起交流学习:723139415