A lot of cameras for parallel training image based RL

I need to create a lot of camera viewports, and each is associated with a different camera (so I can use syntheticDataHelper). However, when I create like 12-13 viewports, I get the following bug:
image
The same thing happens on both ubuntu and windows. It seems there is a max limit on the number of viewports I can create. Then I open the application to create viewports manually. I found out that the same thing happens. Is there a way to increase the number of viewports I can create, or is this not the best practice for large parallel image-based training?

Here is how I create viewports

viewport_handle = omni.kit.viewport_legacy.get_viewport_interface().create_instance()
new_viewport_name = omni.kit.viewport_legacy.get_viewport_interface().get_viewport_window_name(
                    viewport_handle
                )
viewport_window = omni.kit.viewport_legacy.get_viewport_interface().get_viewport_window(viewport_handle)
viewport_window.set_active_camera(camera_path)
viewport_window.set_texture_resolution(*self.sensor_resolution)
viewport_window.set_window_pos(1000, 400)
viewport_window.set_window_size(400,400)
sd_helper = SyntheticDataHelper()
sd_helper.initialize(sensor_names=self.sensor_types, viewport=viewport_window)

In the documentation for Isaac gym, there is something like this:
self.gym.simulate(self.sim)
self.gym.fetch_results(self.sim, True)
self.gym.step_graphics(self.sim)
self.gym.render_all_camera_sensors(self.sim)
self.gym.start_access_image_tensors(self.sim)

Is there an equivalent version in Isaac sim?

Currently Omniverse (kit sdk 103.1, and 103.5) is limited to 12 viewports, we are working on removing this limit with kit sdk 104.x so with future isaac sim releases you can have hundreds of viewports.

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