You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Disclaimer: I'm aware that multiple world simulations are not yet fully supported #18. This issue tracks an undesired behavior that will show up with the current implementation. Mainly open as a reminder.
In a multi-world simulation, each world is independent from each other. Each world owns a ECM which numbers its entities independently from the other worlds.
The current logic to load plugins passes through the following event:
What I suspect is that it will produce an undefined behavior when multiple SimulationRunner objects are part of a Server, like in the case of simulations with multiple worlds. At first sight, each simulation runner will try to load the same plugin for the same entity, even though it could either not exist or belong to a different type in other worlds.
Note: now that the bullet physics plugin is in a advanced development stage, multiple world simulations with different physics engine do not suffer of #18. I also think that simulating two worlds running DART without ODE as collision detector (#684) should work, however I haven't tried this configuration.
The text was updated successfully, but these errors were encountered:
Description
Disclaimer: I'm aware that multiple world simulations are not yet fully supported #18. This issue tracks an undesired behavior that will show up with the current implementation. Mainly open as a reminder.
In a multi-world simulation, each world is independent from each other. Each world owns a ECM which numbers its entities independently from the other worlds.
The current logic to load plugins passes through the following event:
https://github.com/ignitionrobotics/ign-gazebo/blob/a41cf80049c07977079d0b215398dc4225b63038/include/ignition/gazebo/Events.hh#L59-L60
used, for instance, in
SdfEntityCreator
:https://github.com/ignitionrobotics/ign-gazebo/blob/a41cf80049c07977079d0b215398dc4225b63038/src/SdfEntityCreator.cc#L286-L287
The event is connected to
SimulationRunner::LoadPlugin
.What I suspect is that it will produce an undefined behavior when multiple
SimulationRunner
objects are part of aServer
, like in the case of simulations with multiple worlds. At first sight, each simulation runner will try to load the same plugin for the same entity, even though it could either not exist or belong to a different type in other worlds.Note: now that the bullet physics plugin is in a advanced development stage, multiple world simulations with different physics engine do not suffer of #18. I also think that simulating two worlds running DART without ODE as collision detector (#684) should work, however I haven't tried this configuration.
The text was updated successfully, but these errors were encountered: