A tick-tock release cycle allows easy migration to new software versions. Obsolete code is marked as deprecated for one major release. Deprecated code produces compile-time warnings. These warning serve as notification to users that their code should be upgraded. The next major release will remove the deprecated code.
- Modified:
- In the Hydrodynamics plugin, inverted the added mass contribution to make it act in the correct direction.
- If no
<namespace>is given to theThrusterplugin, the namespace now defaults to the model name, instead of an empty string.
-
The ParticleEmitter system is deprecated. Please use the ParticleEmitter2 system.
-
Marker example has been moved to Ignition GUI.
-
Some GUI plugins have been moved to Ignition GUI. Gazebo users don't need to change their configuration files, the plugins will be loaded the same way.
- Grid Config
- Tape Measure
-
dynamic_pose/infotopic is removed fromLogRecordandLogPlaybacksince pose information is being logged in thechanged_statetopic. -
The internal management of entities and components in the
EntityComponentManagerhas been updated to improve runtime performance. As a result, several methods have been deprecated, and a few types have changed.- Deprecated:
- All
EntityComponentManagermethods that useComponentKeyas an input parameter. - The
EntityComponentManager::Firstmethod. - The
ComponentIdandComponentKeytypes are now deprecated. A combination ofEntityandComponentTypeIdshould be used instead. - The
components::StorageDescriptorBaseandcomponents::StorageDescriptor<ComponentTypeT>classes. - Methods in
components::Factorythat have deprecated input parameter types and/or deprecated return types.- The version of
components::Factory::Registerwhich has aStorageDescriptorBase *input parameter. components::Factory::NewStorage
- The version of
- The
ComponentStorageBaseandComponentStorage<ComponentTypeT>classes.
- All
- Modified:
EntityComponentManager::CreateComponentnow returns a pointer to the created component instead of aComponentKey.ComponentKeyhas been modified to be astd::pair<ComponentTypeId, Entity>(it used to be astd::pair<ComponentTypeId, ComponentId>) since theComponentIdtype is now deprecated.ComponentKeyhas also been deprecated, so usage of this type is discouraged (see the Deprecated section above for more information about how to replace usage ofComponentKey).
- Deprecated:
-
The
GzScene3DGUI plugin is being deprecated in favor ofMinimalScene. In order to get the same functionality asGzScene3D, users need to add the following plugins: +MinimalScene: base rendering functionality +GzSceneManager: adds / removes / moves entities in the scene +EntityContextMenuPlugin: right-click menu +InteractiveViewControl: orbit controls +CameraTracking: Move to, follow, set camera pose +MarkerManager: Enables the use of markers +SelectEntities: Select entities clicking on the scene +Spawn: Functionality to spawn entities into the scene via GUI +VisualizationCapabilities: View collisions, inertial, CoM, joints, etc.Moreover, legacy mode needs to be turned off for the following plugins for them to work with
MinimalScene(set<legacy>false</legacy>): +TransformControl: Translate and rotate +ViewAndle: Move camera to preset angles -
The
gui.configandserver.configfiles are now located in a versioned folder inside$HOME/.ignition/gazebo, i.e.$HOME/.ignition/gazebo/6/gui.config.
- If no
<namespace>is given to theThrusterplugin, the namespace now defaults to the model name, instead of an empty string.
-
Use
clicomponent ofignition-utils1. -
ignition::gazebo::RenderUtil::SelectedEntities()now returns aconst std::vector<Entity> &instead of forcing a copy. The calling code should create a copy if it needs to modify the vector in some way. -
Default generated topic name for thermal cameras now includes the
/imagesuffix. Thecamera_infotopic has also been fixed to include the sensor name in the generated topic string. The naming scheme should be consistent with a normal camera sensor. Topic changes:/<prefix>/<sensor_name>->/<prefix>/<sensor_name>/image/<prefix>/camera_info->/<prefix>/<sensor_name>/camera_info
-
Various
GuiEvents were deprecated in favor of their Ignition GUI equivalents.- Deprecated
ignition::gazebo::gui::SnapIntervals - Replacement
ignition::gui::SnapIntervals - Deprecated
ignition::gazebo::gui::Render - Replacement
ignition::gui::Render - Deprecated
ignition::gazebo::gui::SpawnPreviewModel - Replacement
ignition::gui::SpawnFromDescription - Deprecated
ignition::gazebo::gui::SnapPreviewPath - Replacement
ignition::gui::SnapFromPath
- Deprecated
-
The
<direction>tag of spot lights was previously not parsed by the scene, so all spot lights shone in the direction corresponding to the default0 0 -1. Since 5.x, the<direction>tag is correctly processed.
- Ignition Gazebo 4.0.0 enabled double sided material by default but this
caused shadow artifacts to appear on some meshes. Double sided material is
now disabled and made an opt-in feature. Users can configure this property
in SDF by setting the
<visual><material><double_sided>SDF element.
-
The
RenderUtil::SetEnabledSensorscallback in gazebo rendering has a new required function argument for the Entity of the sensor.- Removed
public: void SetEnableSensors(bool, std::function< std::string(const sdf::Sensor &, const std::string &)>) - Replacement
public: void SetEnableSensors(bool, std::function< std::string(const gazebo::Entity &, const sdf::Sensor &, const std::string &)>)
- Removed
-
Log playback using
<path>SDF parameter is removed. Use --playback command line argument instead. -
rendering::SceneManager- Deprecated:
Entity EntityFromNode(const rendering::NodePtr &_node) const; - Replacement:
Entity entity = std::get<int>(visual->UserData("gazebo-entity"));
- Deprecated:
- Some sensors will only have the
SensorTopiccomponent after the 1st iteration.
- Use ign-rendering3, ign-sensors3 and ign-gui3.
-
Changed component data types:
Altimeternow usessdf::SensorJointVelocitynow usesstd::vector<double>
-
Deprecated components:
JointVelocity2: useJointVelocity's vector instead.
-
The
--distributedcommand line argument has been deprecated. Use--network-roleinstead. -
The
-f/--filecommand line argument has been deprecated. The SDF file can now be loaded without a flag. -
The
ign-gazebocommand line tool is deprecated. The new tool isign gazebo, which has all the same options, except for--distributedand--file/-f, which have been removed. -
The
entity_namefield in the messages published by the imu system is updated to report its scoped name. -
Log files generated from Ignition Gazebo 1.X are no longer compatible with Gazebo 2+ for playback. BitBucket pull request #257 added an SDF message to the start of log files.
-
Log playback using
<path>SDF parameter is deprecated. Use--playbackcommand line argument instead.
-
All headers in
gazebo/networkare no longer installed. -
The ignition-gazebo1-gui library has been changed to a
guicomponent of ignition-gazebo. To use the gui component downstream, update the find package call in cmake to request for the component, e.g.ign_find_package(ignition-gazebo1 REQUIRED COMPONENTS gui), and link to thelibignition-gazebo1::guitarget instead oflibignition-gazebo1-gui