Loading world files in ignition rendering
Hello everyone,
I am trying to load the entire SubT worlds in ignition rendering so that I can use the C++ API provided by the framework to take sensor readings for GpuLidars and Camera for faster data collection. Is there a way to load the SubT worlds of the meshes of the entire worlds via ign-rendering? By doing so, I want to omit the physics and any other plugins that are used.
Alternatively, is there a way to configure ign-gazebo to omit the physics plugin so that I may be able to collect data there via a rendering plugin?
Please let me know if I can provide any more information to clarify my question better.
Edit:- Adding image below to clarify the first part of my question better
The below image is a combination of two of the examples in ign-rendering. I have combined the lidar_visual and mesh viewer, with the change that I have loaded a representative mesh (.dae) file without materials and textures from one of the SubT circuit models.
My intention is to have the entire SubT world (with materials and textures) loaded in the GL window through only ign-rendering (without using ign-gazebo or ign-sensors). The reason I am trying to do this is that I would like to be able to simulate parallel instances of these environments, in a manner synchronous with my program. I intended to collect sensor data directly from the GpuLidar sensor inside ign-rendering, and possibly change the pose of the GpuRaySensor inside ign-rendering as my robot moves based on a controller that is implemented elsewhere.
I want to know if there is a good way to load the mesh with textures for the entire SubT worlds directly in the rendering window. Or how I could go about doing the same.
Thanks,
Asked by mihirk284 on 2021-01-29 15:04:25 UTC
Answers
Hi Mihir!
is there a way to configure ign-gazebo to omit the physics plugin so that I may be able to collect data there via a rendering plugin?
You should be able to load any SDF world with ign gazebo world_name.sdf
. If you don't want physics to be run, it's just a matter of not specifying the physics plugin within the world, so you may need to edit the SDF file to remove all plugins that you don't want. Be sure to leave the Sensors
system because that's the one which generates sensor data.
The Server Configuration tutorial should be helpful.
worlds in ignition rendering so that I can use the C++ API provided by the framework
I think these new tutorials on using Ignition Rendering APIs from within Ignition Gazebo may be helpful to you.
so that I can use the C++ API provided by the framework to take sensor readings for GpuLidars and Camera for faster data collection.
Note that Ignition Gazebo gathers this data through Ignition Sensors, which itself uses Ignition Rendering. And currently, it isn't possible to access Ignition Sensors objects directly from Ignition Gazebo yet. See this issue.
Asked by chapulina on 2021-01-30 13:02:20 UTC
Comments
Thank you for your response @chapulina I went through the links and I was able to get the worlds to spawn without physics plugins and saw the new APIs. Currently, my work depends a lot on getting sensor data from the simulation, and as the API is not available currently, I was wondering if I could use only ign-rendering directly to simulate the Camera and GPUlidar sensors for multiple instances.
I have also edited the question to clarify the first part to see if this is possible and can work.
Asked by mihirk284 on 2021-02-01 00:30:52 UTC
Comments