Webots 2018 change log

Webots change log

Webots R2018a

Released on December 20th, 2017
  • New Features
    • Replaced legacy generic Qt robot windows with an HTML5-based system.The legacy generic Qt robot window is deprecated.
    • Added Python 3.6 in addition to Python 2.7 for programming robot controllers (Python 3.5 in also supported on Ubuntu 16.04 and Python 3.4 on Ubuntu 14.04). The Python version can be selected simply by prepending its path to the system PATH environment variable or by setting a new Python command in the Webots Preferences.
    • Added ability to move viewpoint to sit on any of the six world axes, looking at the currently selected object.
      • The numpad digit keys are now exclusively used for moving the viewpoint and cannot be used in controllers.
    • All automated Viewpoint movement is now smoothly animated.
    • Added possibility to record movies in slow motion: acceleration values less than 1 are now supported.
    • Added export of Track texture animation in HTML5 animations and streaming.
    • Added X3D export parameters to better tune shadows and rendering options when exporting HTML5 models or recording animations.
    • Added update of Material 'diffuseColor' field in HTML5 animations and streaming.
    • Added possibility to set the width of lines in the 3D scene from the preferences dialog.
    • Added the PlatformCart PROTO model.
    • Added a fully controllable Truck PROTO with two different trailers.
    • Added a TruckSimple PROTO with the corresponding trailers (fully supported in SUMO).
    • Added a Bench, a PublicBin, a TrashBin and an EmergencyPhone PROTO in the "street furniture" folder.
    • Added a CrashBarrier PROTO.
    • Added a DivergentIndicator PROTO.
    • Added a new automobile world called 'highway_overtake' which represents an overtaking scenario on a highway.
    • Added customizable ScooterSimple and MotorbikeSimple PROTO along with their drivers (supported in SUMO).
    • Added a 'wb_joystick_get_model' function to the Joystick API to retrieve the model of the joystick connected to the controller.
  • Enhancements
    • Moved the controller jar and jni libraries into the WEBOTS_HOME/lib/java folder.
    • Solid.name
      • The Solid.name value has now to be unique between the sibling Solid nodes.
      • The Solid.name value can now contain the ':' character but cannot be empty.
    • Updated version of WBPROJ files: nodes are identified by the stable unique name instead of unique ids.
    • Improved Viewpoint.follow expected value: a unique name including parent Solid.name values is used.
    • USE nodes can no longer be used for Material or PointLight nodes descending from the first child of a LED or Charger node.
    • Updated 'webots_version' dictionary of procedural PROTO nodes: it now contains only 'major' and 'revision'. 'minor' and 'maintenance' values have been removed.
    • Replace wb_distance_sensor_get_[min|max]_range() functions (metrics units) by wb_distance_sensor_get_[min|max]_value() functions (lookupTable response values).
    • Track texture animation: TextureTransform has now to be explicitly defined.
    • Reorganized the 'projects' directory for a clearer file hierarchy. The path to some libraries may have changed and need to be updated in your Makefile.
    • Improved management of floating-point number precision: for legibility, GUI values are displayed with a reduced precision. Values saved in .wbt files now have an absolute precision.
    • Set descriptive Solid.name value for PROTO models in the Webots library.
    • Robot.data
      • Renamed Robot.data to Robot.customData to emphasize the custom nature of the field.
      • Added new API functions wb_robot_get_custom_data and wb_robot_set_custom_data.
      • Robot.data, wb_robot_get_data and wb_robot_set_data are now deprecated.
    • Increased default value for Cylinder.subdivision field from 12 to 36.
    • Added support of the 'Follow Object' in HTML5 animations.
    • Added the field type 'unconnectedField' in order to declare a PROTO field without needing an 'IS' binding.
    • Improved the Fence PROTO, the shape of the poles and horizontal bars can now be defined.
    • Added new fields to the road PROTO nodes which can be used to add crash barriers along the road borders.
    • Added a 'state' field to the 'GenericTrafficLight' PROTO which indicates the current traffic light state.
    • Added a 'groundTexture' field to the forest PROTO which indicates if the forest ground should be displayed or not.
    • Added possibility to enable anti-aliasing for virtual reality headsets on Windows.
    • Added pedestrian crossings importation from OpenStreetMap.
    • Added blinker sound simulation in the automobile libraries.
    • Improved OpenStreetMap buildings importation and added color field in building PROTO.
    • Added three new fields to the SumoInterface PROTO called 'maximumLateralSpeed', 'maximumAngularSpeed' and 'laneChangeDelay'.
    • Renamed the 'enableWheelsRoattion' and 'maxVehicules' fields of the SumoInterface PROTO into 'enableWheelsRotation' and 'maxVehicles'.
    • Removed duplicated soccer_demo simulation from the distributed samples/howto directory. The other simulation in samples/demos/worlds/soccer.wbt remains.
    • Added "Restore Viewpoint" and "Move Viewpoint to Object" features to simulation toolbar, and added/improved keyboard shortcuts.
    • Improved apply force and torque from the 3D scene functionalities so that they can be modified/removed when simulation is paused.
    • Improved web animation and streaming to use the WorldInfo.FPS field to compute the scene refresh rate.
    • Optimized save of large MF fields in world files.
    • Renamed 'automobile' folder into 'vehicles':
      • Renamed the 'automobile' library into 'vehicle' and simplified its usage.
      • The references to the automobile library should be fixed in the C, C++, Python and Java controllers (include, import, Makefile, runtime.ini).
      • The OSM importer and SUMO exporter tools have been moved to the 'resources/osm_importer' and 'resources/sumo_exporter' folders.
      • The SUMO interface and PROTO have been moved to `projects/default` and can now be used in any project.
      • Renamed the 'AutomobileWheel' and 'AutomobileLights' PROTO files into 'VehicleWheel' and 'VehicleLights'.
    • Add visible sensor LED for the first IPR robot in 'ipr_factory'.
    • Disabled take screenshot functionality while recording a movie.
    • Improved error messages printed in the console when setting a directory URL in a field expecting a file.
    • Enabled on-the-plane and vertical dragging for solids in Group and Transform nodes, in addition to top-level Solid/Robot nodes.
    • Improved forward playing speed of HTML5 animations.
    • Added a Car.maxSteeringTorque field to define the maximum torque applied on the y-axis of the front wheels.
  • Bug fix
    • Windows: fixed occasional buggy UTF-8 characters appearing in the Webots console.
    • Fixed printing of several consecutive spaces in the Webots console that were reduced to a single space.
    • Linux: fixed simulation freezing after taking a screenshot.
    • Fixed copying or saving a joint node located in a PROTO field.
    • Fixed loading worlds containing multiple devices of the same type in the Joint or Track 'device' and 'device2' fields: a warning is printed in the console and the node is skipped.
    • Fixed object oriented controller APIs that were returning an invalid device when passing a mismatching but existing device name.
    • Fixed partial insertion of invalid USE nodes: if invalid they are not inserted at all.
    • Fixed check of USE nodes in PROTO files.
    • Fixed check of invalid USE nodes whose definition contains a Slot node with a Solid descendant node.
    • Fixed errors with the Extrusion PROTO when the spine is along the Z axis.
    • Fixed crash when calling the 'wb_speaker_play_sound' function with a sound file whose format is not supported.
    • Linux: fixed display of device name's underscores in the Robot menu.
    • Fixed 'Follow Object' not working correctly when used on a non top Solid.
    • Fixed reproducibility issue in simulations running several supervisor processes with concurrent field get and field set operations.
    • Fixed AckermanVehicle.trackFront field.
    • macOS: fixed hidden close button of the text editor tabs.
    • macOS: Fixed font issues in the offline documentation.
    • Fixed HingeJoint and Hinge2Joint physical stops not matching 'minStop' and maxStop' values after moving the robot (thanks to Matt).
    • Fixed Supervisor set/get MF field methods if called multiple times for the same field but with different indices during one controller step (thanks to Matt).
    • Fixed geometries resize handles (checkbox 'show resize handles' was not showed in geometry nodes).
    • Fixed UTF-8 characters in the wb_display_draw_text() function.
    • Improved search rule for texture path: Webots PROTO path has now lower priority than project world path.
    • Improved the reproducibility of simulation results after revert or load by resetting the random number generators.
    • Fixed custom DEF name for default PROTO fields not saved in world files.
    • Fixed wrong image displayed in RangeFinder overlay if resolution is not a power of two.
    • Fixed crash deleting children of Track node.
    • Fixed crash and wrong behavior when changing the 'fieldOfView', 'verticalFieldOfView', 'numberOfLayers' or 'horizontalResolution' fields of the Lidar device after the simulation started.
    • Fixed changes to the 'minRange' field of the Lidar and RangeFinder devices not applied after the simulation started.
    • Linux: fix application name shown in the system toolbar that could be wrong after multiple Webots installations.
    • Fixed wb_supervisor_node_set_visibility not working with lights (Thanks to Chansol).
    • Fixed IndexedFaseSet duplicated vertices error in 'samples/demos/soccer.wbt' and 'samples/howto/soccer_demo.wbt'.
    • Fixed login dialog preventing users of a local license to login if not connected to the Internet.
    • Fixed incorrect overlay resize behavior when moving horizontally.
    • Fixed shift-scrollwheel vertical translation events not being applied the first time the mouse wheel is rotated.
    • Fixed controller not started when the Robot is imported at first step and simulation is in step mode.
    • Display a warning during HTML5 export of worlds containing USE light nodes that are not supported by all the viewers.
    • Fixed automatic follow solid functionality in web streaming if a new world is loaded while the client is connected.
    • Fixed crash when the 'forceDependentSlip' field of a ContactProperties node is empty.
    • Fixed artifacts due to the spherical projection of the Camera, Lidar and RangeFinder nodes (thanks to Liam).
    • Fixed VRML97 import not copying textures over to the current project.
    • Fixed wrong collision detection when an ElevationGrid is used in a bounding object and the parent Solid is rotated.
    • Fixed bug affecting the friction of a track in a world with a gravity along the Z-axis (thanks to Matt).
    • Fixed an issue where importing VRML97 files containing a WorldInfo node could break Viewpoint mouse navigation.
    • Fixed remote control and cross compilation on DARwIn-OP robot using an old DARwIn-OP Framework
    • Fixed the 'transparency' argument of the 'wb_supervisor_set_label' function which was affecting the color too (thanks to Inbae).
  • Upgrade
    • Windows: upgraded to Qt 5.10.0.
    • macOS: Upgraded to Qt 5.9.2.
    • Changed the template engine from slt2 to liluat.
  • Cleanup
    • Dropped the deprecated Servo node. A PROTO is now replacing the old Servo node.
    • Deprecated the DifferentialWheels node. Please use the Robot node instead with two HingeJoint, RotationalMotor and PositionSensor nodes.
      • All the PROTO files previously using a DifferentialWheels node (including the E-puck, Create, Khepera3 and Khepera4) have been updated to use a Robot node instead.
      • Robot windows of previously DifferentialWheels have been update to use standard units (radians/second for wheel velocities and radians for wheel positions).

    Webots 8 change log

    From October 2014

    Webots 7 change log

    From September 2012

    Webots 6 change log

    From November 2008

    Webots 5 change log

    From January 2005

    Webots 4 change log

    From February 2003