Changelog#

All notable changes and release notes for SVL Simulator will be documented in this file.

[2021.3] - 2021-09-31#

Added#

  • Content creation:
  • Sensors:
  • Agents:
    • NPCManager extension for creating complex NPC behaviors like Parking
    • NPC support customized rigidbody and wheel collider settings: F1Tenth
    • New pedestrian models: See VRU/Walkers: Jun, Yun
  • General:
    • Loaded Assets main menu option for assets in memory
    • Docker support for enabling scenario runners on windows
    • Console for Docker logs
    • Graphics setting menu
    • Main Menu simulator/unity/webUrl display for debugging
    • Added TargetGear for Autoware Auto reverse driving
  • Visual scenario editor:
    • Ego Lane Following feature for VSE playback
    • Support for the BezierSpline paths in the waypoints
    • Support for the NavOrigin
    • Added acceleration support for agents' waypoints
  • Python API:
    • Add Python API commands for Destination sensor
    • API function to set/get NavOrigin in/from scene
    • API versioning support
  • Web user interface:
    • Local Automation support
    • Local automation API token access token creation, listing, and deletion in User Profile page
    • Added preservation of the order of sensors in a sensor configuration
    • Added 'Add to Library' modal preview
    • Added preview images for private asset links in Skype, Facebook, LinkedIn, etc.
    • Added preview images for Simulation links in Skype, Facebook, LinkedIn, etc.
    • Implemented accurate trending algorithm
    • 'Draft' feature for Simulation creation page
    • Improved Simulations gallery loading performance

Changed#

  • Moved simulator input actions to sensor bundles
  • Visual scenario editor:
    • Smoother agent rotation while in playback mode
    • Fix for editing controllables policy and resetting map signals policies
  • Miscellaneous Github issue fixes:
    • API connection fixes
    • Bridge connection fixes
    • Custom Bridge fixes
    • Point Cloud renderer fixes
    • Add checks for pedestrian and traffic annotation for api random agents
    • Development Settings fixes and improvements. Supports cloud assets
    • Import HDMap tool fixes
    • BaseLink fixes
    • Radar velocity fix
    • Build asset fixes
    • NPC segmentation id issues in API
    • Fixed OpenDrive MapOrigin export logic
    • Fix export point cloud feature in simulator editor. Requires latest Lidar Sensor
    • OpenDrive, Apollo Lane, Sign and Signal IDs import & export
    • Refresh cached sims on deleted asset
    • NPC/Pedestrian pool no longer removes existing agents
    • Fixed NPC controller stopping all coroutines on the initialization
    • Fix for Input package error on lost focus
    • Correct name of Cyber bridge asmdef file
    • Fixed initializing spawns manager if there are no active agents
    • Bridge client watchdog coroutine
    • Fix lighting on API agent spawn
    • Removed NavSystem from pedestrian waypoint behavior
    • Fixed invariant float and double parameters in NMEA
    • Fixed SF, Shalun, Highway101 map origin rotation issues
  • Package updates:
    • Update WebSocketSharp
    • Added more debugging logs for FBX2glTF
    • Remove old input unity work arounds for Linux
    • Extracted Pedestrians' behaviours from the PedestrianController
    • Remove Apollo 3.0 support
    • Adding detail map and albedo tint to environment shader
  • Web user interface changes:
    • Updated User Content License to User General Content License
    • User Premium Content license introduction and sort order change
    • Improved asset update progress indicator
    • Improved asset upload error message displays and language
    • Fixed Sharing window issue and Test Report snapshot issue with APIOnly simulations
    • Fixed version compatibility validation when simulation does not have cluster assigned
    • Plugin preview image improvement
    • Fixed simulation assets dropdown when there are more than 30 assets in Library
    • Fixed asset previews in Skype and Facebook
    • Removed markdown markup language from descriptions in link previews
    • Increased size restriction for asset bundle
    • Fixed critical bug related to vehicle asset not being found when sensor configuration's plugin was deleted
    • Fixed critical bug related to asset deletion

[2021.2.2] - 2021-08-18#

Added#

  • Support for indoor robotics and Nav2 navigation stack
  • Sample indoor environment for robots: LGSeocho
  • Sample two-wheel drive robot model: LGCLOi
  • DifferentialDriveControl sensor to control two-wheel drive robots in ROS/ROS 2
  • Support for Unity's ArticulationBody for ego vehicles (robot models)

Changed#

  • Fixed error reporting for bridge connection
  • Fixed baselink offset in sensor visualizer for sensor configurations
  • Added Development as version for custom builds or when running in Developer Mode
  • Fixed NPC vehicle and pedestrian spawn position issue

[2021.2.1] - 2021-07-23#

Changed#

  • Reduce duplicate bridge messages by only loading one bridge in Developer Mode
  • Add log about which assembly a sensor was loaded from to help debug bridges
  • Create folder when user defined data directory path points to absent folder (not recursively)
  • Update default data folder name to “SVLSimulator-\<version>”
  • Fix empty version issue by providing fallback simulator version
  • Fix to allow different versions of simulator to connect to cloud
  • Support bridge type attribute in manifest 
  • Remove error when disconnecting from cloud (WebException: task was cancelled)

[2021.2] - 2021-06-30#

Added#

  • External Pedestrians and NPC (other traffic vehicles) with animation support
  • New NPCs and Pedestrians like Scooters, Bicyclists and Animals
  • External Bridge Support
  • Multiple simulator asset bundle versions support
  • Rain Collision effect
  • Support for simulations without EGO (Spectator Ego)
  • New “Driver view” camera state
  • New API to set simulator camera state
  • Annotation tool to set accurate values (position, rotation and scale) for MapOrigin
  • New “clear cache” option
  • Ability to use proxy server for cloud_url in config.yml
  • New enhanced web user interface:

Changed#

  • Unity Upgrade to 2020.3.3f1
    • Revert FBX package to 3.2.1-preview.2
    • Remove overdraw with HDRP flare
  • Improved NPC handling:
    • Fixed rotating NPC wheels when using NPCWaypointBehaviour
    • Pedestrian ground truth from bounds
  • Improvements and bug fixes around Distributed Simulation with multi-ego support:
    • Fixed API mode for distributed simulation on a single machine
    • Fixed pedestrian animations on client machine
    • Improved distributing VehicleActions
    • Support for the ArticulationBody in distributed simulations
    • Improved load balancing of the sensors
  • Updated Sensor support:
    • Fix TF visual and sensor hierarchy
    • update input for g920 wheel for windows
    • Publish camera intrinsic parameters to ROS and ROS2
    • Rework lidar to use cubemap
  • Improved lighting and rain:
    • Fix brown lighting
    • Rotate sun and moon to match map rotation
    • Rain collision improvements and fixes
    • Fix overlapping rain chunks
  • Enhanced Visual Scenario Editor support:
    • Minor UX fixes
    • Fixed changing agents' variants
    • Fix issue with agent dropdown not refreshing on click
    • Loading pedestrians from config
  • Improvements around HD Map Mesh Generator:
    • Improve data handling in HD map mesh builder
    • Erosion and re-leveling for point cloud mesh
  • Work in progress improvements on Developer mode:
    • Rework developer settings
    • Bundle version uptick and unity editor check on developer debug mode for bridges
    • Sensor debug developer loading
  • More enhanced and user friendly web user interface:
  • Misc Improvements:
    • Support default light layers in point cloud renderer
    • Loads assembly with the ego name from asset bundle
    • Added public driver view transform to be set in the Inspector
    • Asmdef added, loader fixed to deal with bundle/WISE name mismatch
    • Loader: improve the error message about BundleFormat
    • Make sure Simulator.Editor.Build.Run exits on any exception
    • Trimming last slash in the cloud url if needed.
    • get full path from data path provided

[2021.1.1] - 2021-05-20#

Added#

  • 3D Visualizer to help create sensor configuration on a vehicle
  • HD map visualizer on map profile pages
  • Ability to share test reports with other users
  • "Supported Simulator versions" value on asset profile page
  • Improved sharing feature for private assets and simulations
  • Save and Exit button on sensor configuration page
  • Tutorials to help new users on how to interact with the web user interface pages
  • Email confirmation upon sensor plugin sharing

Changed#

  • Improved quick filters on Store and Library pages
  • Redirect to existing asset profile page when uploading an already uploaded asset
  • Request access button on private plugin pages
  • Require adding a vehicle sensor configuration when creating a simulation
  • Fixed issues with multi-vehicle simulation using same vehicle and sensor configuration
  • Improvements to cluster page user experience
  • Show proper names for missing sensors on invalid simulations
  • Proper error messages for wrong information on registration page
  • Proper error messages when maximum allowed cluster limit is reached

[2021.1] - 2021-03-23#

Added#

  • New cloud-based web user interface including:
    • Asset Store for downloading assets, uploading and sharing assets publicly
    • user account password management
    • user assets management library
    • support for private assets
    • private assets/simulations sharing with registered users
    • cluster/Simulation status handling
    • SVL Simulator content from this release will be available in the Asset Store
  • New and updated runtime templates for simulations with automatic bringup and execution:
    • Random Traffic
    • Visual Scenario Editor
    • Python API
    • API Only
  • Visual Scenario Editor for creating scenarios including support for:
    • traffic vehicle and pedestrian waypoints
    • previews
    • copy/paste/undo feature
    • ability to specify ego vehicle target destination
    • support for controllables with ability to edit default policy
    • color selection for actors
    • waypoint positions snapped to HD map lanes
    • support for distance, time, and time-to-collision triggers
    • traffic lights control
  • Automatically generated test case reports of simulations including:
    • success/failure scenario evaluation
    • simulation statistics
    • analytics data per sensor
    • video recording of simulation
    • multiple violation event detection: collision, stopline, stopsign, ego-stuck, sudden jerk/brake/turn, speed-limit, etc.
  • PythonAPI: many improvements including:
    • added cloudiness and road damage to weather parameters
    • ability to specify date in environment configuration
    • added Dreamview API as sub-module
    • added callback agents_traversed_waypoints
    • added ability to set speed at WalkWaypoints
    • added waypoint trigger system
    • ability to set simulator camera free-state position and rotation
    • sample Python API scripts based on NHTSA-defined scenarios for end-to-end testing
    • additional Python API test samples: random-traffic mode, cut-in, sudden-braking, etc.
  • Environment configuration improvements:
    • moon position in nighttime environment configurations
    • Improved environment road wetness layer
    • UI for FPS and SIM time
    • Improved rain particles
    • Increased types of traffic lights, model improvements
  • Improvements in Developer Mode:
    • developer settings to use ego vehicle within Developer Mode
    • ability to select and add actors to simulation in Developer Settings
    • added sensor debug mode
    • added tool to rotate Editor scene view to -X north
  • Features for traffic agents in simulation:
    • support for bicyclist traffic agents
    • support for custom traffic vehicle behavior plugins
    • pedestrian crosswalk support with yield for traffic vehicles (SanFrancisco map)
    • added direction for pedestrian crosswalk annotation tool
    • spawning NPCs now raycasts target bounds from egos' positions
  • New map/environment creation improvements:
  • General simulation improvements:
    • ability to create and run a Distributed Simulation from web user interface
    • offline mode for running saved simulation configurations
    • improved cache control for downloaded assets
  • Sensors improvements:
    • new sensors: StopLine, HUDKeyboardControl, AutowareAIControl, LGSVLControl, etc.
    • improved LiDAR simulation performance
    • sun-flare, raindrops, greyscale, and video artifacts effects for sensors
    • support for sensor post-distortion effects
    • Default values for simple and complex sensor parameter types
    • Enabled sensors to load texture assets
  • Improvements around support for AD stacks:

Changed#

  • Product branding changed from "LGSVL Simulator" to "SVL Simulator"
  • Old local web user interface is now deprecated. Users need to migrate to new web user interface
  • Old content website will be deprecated
  • All content now managed on cloud - downloaded as needed by simulation configuration
  • Unity update to 2019.4.18f1
  • All sensors are now sensor plugins - default sensors are part of user plugin library
  • Sensor plugins no longer bundled with simulator executable
  • Distributed simulation: fixed pedestrian movement animation bug
  • Distributed simulation: video artifact fix
  • Fixed wrong timestamp error in clock and IMU sensors
  • Fix acceleration/angular velocity in Apollo imu/corrected_imu
  • Fixed way of handling failed downloads
  • Fixed bugs and issues in OpenDrive HD map importer and exporter
  • Point cloud rendering: added alternative method for removing obscured points (reduces flickering, requires depth prepass)
  • Point cloud rendering: Fill scarce depth map holes through neighborhood sampling
  • Point Cloud Rendering: Fix skybox blending in unlit point cloud
  • Improved traffic lights in environments
  • Rain/clouds/lights improvements
  • NPC spawn logic improvements
  • Fix old NPC models and prefab
  • Adjust camera distance from ego bounds
  • HD map import: Fix keyError in lanelet2 and improve grouping lanes at intersections
  • HD map import: Fix map origin update during OpenDrive map import

[2020.06] - 2020-08-31#

Added#

Changed#

  • Fixed 90 degree orientation offset in GPS odometry sensor
  • Replaced default ROS2 bridge to improved custom ROS2 bridge instead of ros2-web-bridge
  • Unity update to 2019.3.15f1
  • Fixed timestamps in GPS, IMU
  • Added timestamp to default LiDAR sensor PointCloud message
  • Fixed bugs in OpenDrive map importer to correctly compute reference lines and lane widths for edge cases
  • Improved OpenDrive map exporter to export parametric cubic curves instead of simple lines for each reference line segment

[2020.05] - 2020-06-02#

Added#

  • Support for custom traffic vehicle behavior plugins
  • Support for Apollo 5.5 (latest master)
  • Support for distributed simulation
  • Velodyne VLS-128 support
  • Python API function to spawn random non-ego vehicles and pedestrians
  • Unlit shadows support for point cloud environment rendering
  • AD system-agnostic message definitions to "lgsvl_msgs" for vehicle control, CAN bus and status data, etc.

Changed#

  • Refactored traffic agent Waypoint Mode with fixes for idle and trigger waypoints
  • Changed gnss_odom message coordinate system to right-handed coordinate system
  • Fixed "ignore map origin" option for gnss_odom message
  • Fixed acceleration values in IMU sensor
  • Fix sky flickering issue during point cloud rendering
  • Fixed LiDAR readback error
  • Removed and replaced documentation source files from main repository to separate Documentation repository

[2020.03] - 2020-04-03#

Added#

  • Velodyne VLP-16 and VLP-32C support through custom LiDAR sensor plugin
  • Support for LiDAR sensor plugin with direct UDP socket interface
  • Support for point cloud environment rendering
  • Extensible vehicle dynamics
  • Functional Mockup Interface 2.0 (FMI 2.0) interface for vehicle dynamics
  • Support for fisheye camera lens distortion
  • Support for sensor_msgs/NavSatFix message type for GPS messages in ROS2
  • Vehicle Odometry sensor for reporting steering angles and velocity in ROS2

Changed#

  • Upgraded to Unity 2019.3.3f1
  • Fixed black artifacts in Linux bug
  • Fixed display issues in Unity Editor bug
  • Fixed camera sensor invalid data bug
  • 3D Ground Truth sensor now generates different ID for vehicle after each respawn

[2020.01] - 2020-01-31#

Added#

  • Controllable Object plugin support, dynamically add and control Controllables with the Python API
  • Ability to create LiDAR sensor with non-uniform beam distribution
  • Ability to add distortion effects to Camera sensors
  • Support for Autoware.Auto messages (ROS2)
  • Ability to create custom message types for sensor plugins
  • TransformSensor which can act as a parent for other sensors
  • VehicleStateSensor which is needed by Autoware.Auto

Changed#

  • Added SanFrancisco map as a default map option
  • Allow null texture bundles without an error
  • Pedestrian mass reduced to 70kg
  • Fixed lagging of 2D Ground Truth boxes (in visualization and data)
  • ComfortSensor included with Simulator binary
  • TrafficCone included with Simulator binary
  • Fixed exported HD map lane relations
  • Fixed ROS2 GPS

[2019.12] - 2020-01-21#

Added#

  • Custom callback for Python API, useful in sensor plugins.
  • Ability to specify count and types of NPCs to spawn on the map.

Changed#

  • Optimized texture usage in maps - significantly reduces size on disk and GPU memory used.
  • Allow boundary type to be optional for Apollo HD map import.
  • Fix Python API to be able load maps & vehicles that are shared between multiple users.
  • Separated bundle file format version for map and vehicle bundles.
  • Improved headlights for EGO vehicles.
  • Improved HD map annotation icons.
  • Fixed Sedan NPC mesh.

[2019.11] - 2019-11-19#

Added#

  • OpenDrive 1.4 HD map import.
  • Rain drops on ground when it is raining.
  • Separated Apollo HD map export between version 3.0 and 5.0 to support 5.0 specific features.
  • Cache vehicle prefabs when loading same vehicle multiple times into simulation.
  • Ability to login to account via command-line.
  • Ability for vehicle to have multiple interior lights. Fixes #474.
  • Allow Color, Depth and Semantic cameras to have higher capture & publish rate.
  • Building & loading custom sensors as plugins.

Changed#

  • Fixed traffic lights signal colors on Shalun map.
  • Fixed exceptions when NPCs are despawned while still in intersection.
  • Fixed errors when adding pedestrian to map without NavMesh.
  • Fixed Lanelet2 boundary import and export.
  • Multiple fixes for OpenDrive import and export.
  • Fixed wrong raycast layers in 2D Ground Truth sensor to detect if NPC is visible.
  • Fixed missing timestamp when publishing ROS/Cyber messages from 2D Ground Truth sensor.
  • Limit number of spawned NPCs and vehicles for large maps.

[2019.10] - 2019-10-28#

Added#

  • Apollo HD map import
  • Accurate sun position in sky based of map location. Including time of sunrise and sunset.
  • Control calibration sensor to help calibrating AD stack control.
  • Ported Shalun map from previous non-HDRP simulator version.
  • Ground Truth sensor for traffic light.
  • Python API method to get controllable object by position.
  • Python API method to convert multiple map coordinates in single call.
  • Python API method to perform multiple ray-casts in single call.
  • Sensor for controlling vehicle with steering wheel (Logitech G920).
  • Platform independent asset bundles (Windows and Linux).
  • Allow to set custom data path for database and downloaded bundles.
  • Visualize data values for non-image senors (GPS, IMU, etc).
  • Populate scene with required objects when new scene is created in Unity Editor.

Changed#

  • Fixed exceptions in ROS Bridge where if it receives message on topic that it has not subscribed.
  • Fixed 3D Ground Truth sensor to report correct NPC orientation angles.
  • Fixed Radar sensor to visualize pedestrians.
  • Fixed Color camera to render mountains in BorregaAve.
  • Fixed EGO vehicle collision callback to Python API.
  • Fixed WebUI redirect loop that happens if you are logged out.
  • Fixed reported NPC vehicle speed. Fixes #347 and #317.
  • Fixed gear shifting for EGO vehicle control. Fixes #389.
  • Fixed NPC waypoint following where NPCs stopped if assigned speed is too low.
  • Fixed semantic segmentation for vehicles and pedestrians added with Python API.
  • Fixed ROS2 message publishing (seq field was missing in Header). Fixes #413.
  • Fixed issue with database on some non-English locales. Fixes #381.
  • Fixed point cloud generation in Unity Editor.
  • Fixed browser loosing cookie when session ends in WebUI.
  • Fixed slowness in Python API when running without access to Internet.
  • Fixed issue when multiple users could not use same map url.
  • Improved error messages when simulation fails to start.

[2019.09] - 2019-09-06#

Added#

  • Sensor visualization UI
  • HD map export to OpenDrive 1.4 format
  • ROS service support for ROS bridge
  • Python API to support more robust waypoints for NPC vehicles
  • Python API with ability to control traffic lights on map
  • Hyundai Nexo vehicle

Changed#

  • Improved NPC movement and right turns on red traffic light
  • Fixed NPC vehicle despawning logic so they don't get stuck in intersections
  • Change NPC vehicles colliders from box to mesh to improves collision precision
  • Updated generated protobuf message classes for latest Apollo 5.0
  • Fixed 3D Ground Truth message type for ROS
  • Fixed 3D and 2D Ground Truth bounding box locations

[2019.07] - 2019-08-09#

Added#

  • Separate Asset Bundles for environments and vehicles
  • Fully deterministic physics simulation
  • Faster-than-real-time capability with Python API
  • Lanelet2 HD map format import/export
  • Ability to edit sensor configuration dynamically
  • Multi-user support - account login allows different users to login to one machine running simulator
  • BorregasAve 3D environment as a default provided map
  • AutonomouStuff 3D environment as a default provided map of parking lot
  • SingleLaneRoad 3D environment as a default provided map
  • CubeTown 3D environment as a default provided map
  • Lexus RX and Lincoln MKZ vehicle support
  • LiDAR outputs intensity value based on reflectivity of material (instead of color)
  • Support for Apollo 5.0
  • Support for Autoware 1.12
  • Light reflections on road from wetness
  • Better sky rendering, including clouds
  • Ability to import point cloud files for visualization

Changed#

  • User interface - use web UI for main user interaction
  • Render pipeline - Unity High Definition Render Pipeline
  • Significantly improved LiDAR simulation performance using multithreading
  • Improved map annotation for easier use in Editor
  • Improved point cloud generation from 3D environment in Editor

Removed#

  • Support for Duckiebot, EP_rigged, SF_rigged, Tugbot vehicles
  • Support for SimpleLoop, SimpleMap, SimpleRoom, Duckietown, DuckieDownTown, SanFrancisco, Shalun maps

[2019.05 and older]#

Please see release notes for previous versions on our Github releases page.