Ignition Edifice Release 🏢


Get started with these instructions.

The simulation team at Open Robotics is happy to announce another major release of Ignition, code named Edifice! :fire: :office: This is the fifth major release of Ignition, following Dome, Citadel, Blueprint and Acropolis.

Edifice is a short-term release supported until March 2022.

Here are a few highlights since Dome’s release 6 months ago:

  • Depot world : Try out the Edifice demo world, which showcases lots of new features at once, using the latest rendering features, as well as new sensors and controllers!

  • Ignition Utils : There’s a new library in the Ignition family, Ignition Utils, which provides various tools and utilities that are useful to all libraries (and also external projects!), without bringing in any extra dependencies.

  • Rendering & Sensors : New visual effects and sensor features

    • Custom engines : Full interface for using custom rendering engines.
    • Sky : Add a sky to your worlds using SDFormat’s <sky> tag.
    • Lightmap : Support lightmap textures for efficient prebaked global illumination, see this example model.
    • Light intensity : Lights now have an new intensity parameter that can be modified at runtime.
    • Render order : It’s now possible to set the preferred render order for overlapping polygons to resolve z-fighting.
    • Thermal camera : A thermal camera sensor that supports objects with uniform or variable surface temperatures.
    • Particle effects : Full support for particle emitters, which affect sensors like depth cameras and lidars in a realistic way. Try it out with ign gazebo particle_emitter.sdf.
    • Laser retroreflection : Objects detected by Lidar can have custom retroreflection. Try ign gazebo gpu_lidar_retro_values_sensor.sdf.
    • Logical audio sensor : New sensor that acts as a microphone to check if audio was detected coming from audio sources in the world.
    • Optical tactile sensor : Sensor that measures contact normals using a depth camera and a contact sensor.
  • GUI : Lots of new GUI features and widgets

    • Lights : Insert, configure and visualize lights through the graphical interface or using Ignition Transport.
    • Tape measure : Measure distances in the 3D scene by clicking on them.
    • Joint controller : A joint position controller widget, try it out with the NAO robot on this world.
    • Collision visualization : View collision shapes on the graphical interface in order to better introspect running simulations.
    • Screenshot : Take screenshots of running simulations and save them to disk with the click of a button.
    • Physics parameters : Configure real time factor and step size from the GUI.
  • Ackermann drive : There’s now an Ackermann steering plugin, try it out with ign gazebo ackermann_steering.sdf.

  • Mecanum drive : There’s also a Mecanum drive plugin, try it out with ign gazebo mecanum_drive.sdf.

  • Capsule and ellipsoid : Besides box, sphere and cylinder primitives, Ignition now also supports capsules and ellipsoids. Try out ign gazebo shapes.sdf .

  • Model composition : It’s now easier than ever to compose models out of various nested models. See the proposal and the presentation.

  • Non-SDF models : libSDFormat now provides API hooks that can be used to parse models in custom formats.

  • Heightmaps : Visualize terrains, and soon collide with them too!

  • ROS integration : Edifice can be used with ROS Noetic and ROS Foxy, and it will be the official Ignition version for the upcoming ROS Galactic.

  • Names with spaces : Full support for entity names containing spaces.

  • COLLADA exporter : Generate a COLLADA mesh from a simulation.

  • Model inter-dependencies : Models uploaded to Ignition Fuel can easily reuse assets from other models.

  • Easier migration from Gazebo classic : New APIs and tutorials to aid users in migrating from Gazebo classic to Ignition Gazebo.

In case you missed our March Community Meeting, check it out to see live demos of several of these features!

The currently supported platforms are:

  • Ubuntu Bionic (18.04) and Focal (20.04)
  • MacOS Catalina (headless mode only)
  • Windows (support for some libraries)

We’d like to thank all contributors to this release:

AJRepo
Aaron Chong
Abrar Rahman Protyasha
Addisu Z. Taddese
Akash Patel
Akshat Pandya
Alejandro Hernández Cordero
Ammaar Solkar
Andrej Orsula
Ashton Larkin
Atharva Pusalkar
Carlos Agüero
Claire Wang
David Kanekanian
Diego Ferigo
Edwin Fan
Eric Cousineau
Gonzalo de Pedro
Guillaume Doisy
Hauke Heibel
Hill Ma
Ian Chen
Ivan Santiago Paunovic
Jaldert Rombouts
Jenn Nguyen
John Shepherd
Jose Luis Rivero
Juan Oxoby
Kevin Knoedler
Le Thai An
Louise Poubel
Luca Della Vedova
Mabel Zhang
Martin Pecka
Martiño Crespo
Marya Belanger
Michael Carroll
Michal Wnukowski
Nate Koenig
Nick Lamprianidis
Pedro Alcantara
Rein Appeldoorn
Reka Berci Hajnovics
Rhys Mainwaring
Rushyendra Maganty
Russ Webber
Sebastian Wallkötter
Shameek Ganguly
Shane Loretz
Silvio Traversaro
Stefan Profanter
Stephen Brawner
Steve Peters
Steven! Ragnarök
Stewart Menday
Timo Röhling
Tobias Fischer

We’d like to give especial thanks to the contributors who helped us review Edifice tutorials during the Tutorial Party:

Ammaar Solkar (who reviewed an amazing total of 103 tutorials!)
Atharva Pusalkar
Andrej Orsula
Pedro Alcantara
Ruben Alves

The next release, Ignition Fortress, is scheduled to be released on September 2021. Keep an eye on the roadmap for what’s coming up, and let us know what features you’re interested in!

Be sure to get your Edifice shirt!

The Ignition Dev Team

7 Likes

You’re welcome @chapulina and Ignition Team, it’s always a pleasure to help this project :fire: :building_construction: :office:

1 Like

We are happy to announce that new platforms are available:

  • Debian Buster amd64
  • Ubuntu Bionic and Focal arm64

You can check the issue tracker to follow the status of other platforms.

1 Like

The roadmap was mentioning level-of-detail support. Has that been merged?

Is there a link for example usage? How is it different from defining <depend><model><uri> in model.config and specifying path to the resource using its full Fuel link? This approach works well even in Dome.

That’s still on the roadmap for Edifice. Work hasn’t started yet.

That’s exactly what that line is referring to. Models referred to by <depend><model><uri> are downloaded together with the parent model. The feature is available on Citadel and later versions since November 2020.

There are many features on this list that are also available on versions earlier than Edifice. What they all have in common is that they’ve been released after Dome’s initial release on October 2020.

Thanks for clarification.