[Feature]: Support assigning different object shapes and sizes across parallel environments
What feature or enhancement are you proposing?
I am proposing to extend the domain randomization framework to support assigning different object geometries (e.g., box, sphere) and object sizes independently across parallel environments. Currently, the examples mainly demonstrate randomization of mass, friction, and position, but not geometry or shape-specific parameters.
Motivation
As a robotics researcher developing and training RL policies in parallel simulated environments, I want to be able to assign different object types (e.g., some environments with a sphere, others with a box) and customize their sizes individually, Because this would allow me to better evaluate generalization across diverse manipulation targets and simulate more varied and realistic task conditions.
Potential Benefit
Enhances the diversity and realism of simulation environments
Improves policy robustness and generalization in tasks involving objects of varying shapes and scales
Aligns with more advanced domain randomization needs in embodied AI and robotics learning
What is the expected outcome of the implementation work?
Support for specifying different object geometries per environment instance
API or config support to assign varying object size (scale) per environment
Documentation or example code demonstrating how to use these new randomization options
(Optional) Compatibility with existing physics parameter randomization setup
Additional information
No response
Hi,
Thanks a lot for the recent update! The Heterogeneous Simulation PR looks great. I tried the example and it works well overall, but I noticed a few things I wanted to ask and suggest:
** Object Color Always White**
When I run the example, the object color always appears white, regardless of the object type. Is this a known issue or could it be related to my local settings?
Friction Randomization Limitation I also noticed that while mass can be set individually for each environment, friction appears to be global. This limits the potential of domain randomization, as the friction remains the same even across different shapes and masses. Is there any plan to support per-environment friction settings in future updates?
MPM Solver Support for Heterogeneous Simulation Lastly, I was wondering if there are plans to support heterogeneous simulations using the MPM solver as well? That would be a fantastic addition and could greatly increase the versatility and impact of the Genesis framework, especially compared to other simulators.
Thanks again for your work—this is an amazing tool!
@YilingQiao @Kashu7100