Add distinct objects in Cloned environments

Hello,

In my environment, there is a robot and a set of objects to grasp placed in a tray. I would like to use the GridCloner to clone the robot and the tray. After the environments are cloned, I’d like to add different objects individually in each cloned environments.

However, currently if I add an object in the env_0, then the object is automatically added to all cloned environments. Do someone know how I could add object in env_0 and avoid it to be cloned in all envs?

1 Like

Hello,

I am interested in the same application. Have you figured out any solution?
Thank you for your insight! :)

Hello,
To avoid the issue, we create the source environment containing the robot, the setup (table, tray,…) and we use this environment only to be cloned and to create the other environments.
It is the other environments in which we add directly distinct objects and do the tasks. It is the only work around that we found.

Does this document help you? 4. Getting Started with Cloner — Omniverse Digital Twin documentation

Not really as it seems not written explicitly that the addition of a new object in the source environment after the clonage implies that the same object is added to each the cloned environments

Hi there, in order to add distinct objects to individual environments, please do this after the environments have been cloned. You can iterate through the environments after cloning and add objects directly to the stage using USD APIs. We have an example of this workflow for our Factory environment: OmniIsaacGymEnvs/factory_env_nut_bolt.py at main · NVIDIA-Omniverse/OmniIsaacGymEnvs · GitHub.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.