Commit Graph

1093 Commits

Author SHA1 Message Date
bernat b6639328ac Removing pointer to function, applying Nestor cleaner method 2020-06-30 13:12:22 +02:00
bernat e5861e5c91 Adding 'atomic' library at linking on Ubuntu 2020-06-30 13:12:22 +02:00
bernat acd85f0624 Made pointer to class method as atomic pointer 2020-06-30 13:12:22 +02:00
bernat 9b716e1698 All streams are multi stream now 2020-06-30 13:12:22 +02:00
Marc Garcia Puig 083d579961 Added default values for lanes missing width 2020-06-18 14:51:51 +02:00
Marc Garcia Puig f5bf74aafc Nagle's algorithm deactivation has been forced 2020-06-18 14:50:26 +02:00
doterop f114dc0aa1
Remove intermediate map when changing map. (#2911)
* Fixed load_new_episode and removed intermediate check.

* Recovered intermediate state.

* Removing intermediate map

* Fixing merge issue

* Remove unnecessary check in load_new_episode
2020-06-15 10:53:26 +02:00
Marc Garcia Puig 97cb2dfec0 Fixed fog_falloff in Boost Python 2020-06-10 14:43:21 +02:00
Marc Garcia Puig cd49cbc3b2 Fixed fog_falloff constructor 2020-06-10 14:43:21 +02:00
Marc Garcia Puig 07fe7a7153 Added weather parameter fog_fallow to PythonAPI 2020-06-10 14:43:21 +02:00
Praveen Kumar d2457a2e8c Implemented spatial index tree for
waypoint indexing and querying.
2020-06-09 15:26:02 +02:00
Marc Garcia Puig fc133121c7 Added get function for all car light states 2020-06-08 10:49:31 +02:00
Marc Garcia Puig 923960751f Added batch command SetVehicleLightState 2020-06-08 10:49:31 +02:00
Praveen Kumar 1e98335808
Traffic manager 2.0 (#2833)
* Traffic Manager 2.0

* WIP: new class structure for TM 2.0
Yet to use the new classes in TrafficManagerLocal

* WIP: new class structure integration

* Fix for python api build.

* Fix for hybrid mode crash.

* Fixed incorrect collision cache.
Fixed crash upon map change.
Minor reformatting.

* Fixed collisions with unregistered actors.
Fixed collisions among multiple traffic manager instances.
Fixed vehicle destruction upon being stuck for too long.

* Fixed vehicle wobble on steep roads

* Waypoint buffer extension at junction entrance.

* WIP: Revamped intersection anticipation.

* Implemented waypoint occupancy tracking.

* * considering buffer independent waypoints
for determining blocked junction exit.

* considering longitudinal extreme points
for localizing unregistered actors.

* Removed debug statements

* Intersection anticipation for vehicles moving across path.

* Fixed intersection anticipation in Town03, Town04.

* Safe interval length check for intersection anticipation.

* Distance check from safe interval for blocked exit.

* Removed debug statements

* * Intersection anticipation exception for roundabout in Town03.
* Updated comments.

* codacity fix

* more codacity fixes

* formatting and minor changes

* bad indentation

* Removed debug statements and updated comments.

* fixes unused variable error in make examples

* Increased minimum obstacle distance for lane change
to avoid partial lane changes.

* Removing crude stopping logic at junction entrance
for blocked junction case.

* Ignoring small intersection segments
for intersection anticipation.

* Fixed issue in unblocking mechanism
due to incorrect clock initialization.

* Fixing intersection entrance identification.

* Fixed incorrect safe space after junction detection.

* Fixed collision negotiation conditions
to work well inside intersections
and avoid deadlocks in roundabout turns.

* Replaced in file constants of InMemoryMap
with definitions from Constants.h

Updated comments

* Added a check to avoid collision considerations
in case  of traffic light hazard in motion planner.

* Re-organised include statements for ALSM.h/.cpp files.

Fixed a double initialization precision.

* WIP: Refactoring ALSM::Update

* Refactored ALSM::Update into shorter functions.

* ALSM: Corrected numeric comparision precision
and container access optimizations.

* Initial review changes

* CollisionStage: addressed pr comments.

* Constants.h, DataStructures.h: addressed pr review comments.

* InMemorMap: review comment addressal.

* LocalizationStage: Review comment addressal

* New class for random generation instead of rand()

* Removed unused code

* MotionPlanStage: re-organized include statements.

* MotionPlanStage: review comment addressal.

* SimulationState, DataStructures: minor refactoring.

* SnippetProfiler, TrackTraffic: Review comment addressal.

* Refactored include statements for
SimpleWaypoint, SnippetProfiler, TrackTraffic files.

* TrafficLightStage: review comment addressal.

* Using sleep instead of continue to time hybrid mode.

* Changing fixed array allocation with dynamic resizing.

* Refactored include statements for TrafficManager

* Removed clamp macro

* Added const to Networking constants

Co-authored-by: Jacopo Bartiromo <jackbart94@gmail.com>
Co-authored-by: Jacopo Bartiromo <32928804+jackbart94@users.noreply.github.com>
2020-06-05 00:02:10 +02:00
Néstor Subirón 66166399bb Fix wrong assert 2020-06-04 14:31:18 +02:00
Néstor Subirón ae6d327d1f Fix false positive assert in Array offset 2020-06-04 14:31:18 +02:00
Néstor Subirón 172aa55186 Fix threads not properly stopped on streaming tests 2020-06-04 14:31:18 +02:00
Néstor Subirón 4f11c03b94 Fix UB in MsgPack for empty strings 2020-06-04 14:31:18 +02:00
Néstor Subirón 15c250ad2a Fix division by zero 2020-06-04 14:31:18 +02:00
Axel1092 d26f69957f Added fast conversion from/to FString and std::string. 2020-05-29 12:34:29 +02:00
Marc Garcia Puig 3e8e6dc4de Fixed MeshFactory circular dependency 2020-05-29 12:34:29 +02:00
Axel1092 827368588d Updated docs and CHANGELOG. 2020-05-29 12:34:29 +02:00
Axel1092 cd277af189 Code clean up. 2020-05-29 12:34:29 +02:00
Axel1092 605c99136d Improved standalone mesh split. 2020-05-29 12:34:29 +02:00
Axel1092 543f502512 Fixed large RAM usage in cubic polinomial curves. 2020-05-29 12:34:29 +02:00
Axel1092 734912df54 Added optional recast execution. 2020-05-29 12:34:29 +02:00
Axel1092 381d6b2d97 Fixed string length limit in ToFString and FromFString in String.h. Fixed some parameters not used in standalone mode. 2020-05-29 12:34:29 +02:00
Javier Hidalgo-Carrió 26441431e4 DVSEventArray: boolean in +1 and -1. DVSCamera: set default threshold values 2020-05-08 20:08:27 +02:00
Javier Hidalgo-Carrió 38432de658 python api: move logic in sensor data methods to DVSEventArray 2020-05-08 20:08:27 +02:00
Marc Garcia Puig 9f5f4b9a2e Moved ToImage() and added a use case in man_contr 2020-05-08 20:08:27 +02:00
Marc Garcia Puig a55c71ad4f Added our standard noise to DVS sensor + Win fixes 2020-05-08 20:08:27 +02:00
Marc Garcia Puig 87ac3b9a6d Minor fixes and code style adaptation 2020-05-08 20:08:27 +02:00
Javier Hidalgo-Carrió c45614c983 DVS camera sensor implementation 2020-05-08 20:08:27 +02:00
Marc Garcia Puig 50d70709fc Fixed wrong operator 2020-05-08 12:12:57 +02:00
Marc Garcia Puig 3afd89074c Adjusten mesh generation EPSILON 2020-05-08 12:12:57 +02:00
Axel1092 f99a06f7e5 Bug fixes: poly geometries problems at s = 0, crash when computing junction bounding box, crash in GetNextUntilLaneEnd and GetPreviousUntilLaneStart for very short roads. 2020-05-08 12:12:57 +02:00
bernat b67ba6c3c9 Updating to master 2020-05-06 13:09:12 +02:00
Vaan5 06cbfa673d Add missing include in WheelPhysicsControl.h 2020-05-06 13:09:12 +02:00
bernat 4dc6eba755 New API function to add angular impulse to an actor 2020-05-05 11:16:23 +02:00
kbu9299 bcf542f579 Fix typos 2020-05-04 10:05:18 +02:00
kbu 9d66a06caf Correct the proper checking for left lane marking 2020-04-22 20:59:21 +02:00
Axel1092 ff97d65cc0 Fixed server-client sincronization for map change. 2020-04-22 20:58:46 +02:00
doterop 4384e386c2
Light API (#2756)
* Added CarlaLight class.

* Added get and set for carla light type.

* Added LightManager, Light and LightState

* Fixed unapplied changes

* Fixed LM::GetAllLights

* Fixed Python getter

* Added LightManager, Light and LightState. Python bindings included.

* Completed LightManager communication and LightSubsystem on server

* Fixed concurrency and color conversion

* Added check for null case on RegisterLight and UnregisterLight

* Fixed map change crash in editor.

* Added client syncronization.

* Updated Python docs.

* Fixed client sync

* Added CarlaLight class.

* Added get and set for carla light type.

* Added LightManager, Light and LightState

* Fixed unapplied changes

* Fixed LM::GetAllLights

* Fixed Python getter

* Added LightManager, Light and LightState. Python bindings included.

* Completed LightManager communication and LightSubsystem on server

* Fixed concurrency and color conversion

* Added check for null case on RegisterLight and UnregisterLight

* Fixed map change crash in editor.

* Added client syncronization.

* Updated Python docs.

* Fixed client sync

* Updated changelog

* New iteration on lights docs

* Fixed docs

* Content version updated

* Removed NonCopyable

* Compilation fix.

Co-authored-by: Axel1092 <axellopez92@outlook.com>
Co-authored-by: sergi-e <rigesklaine@gmail.com>
Co-authored-by: bernat <bernatx@gmail.com>
2020-04-17 12:29:54 +02:00
doterop 5d177eb4bb set_autopilot now uses the TM port instead of the TM object 2020-04-16 12:36:53 +02:00
Praveen Kumar 50281d7ecb Hot fix for PyEval error 2020-04-16 12:36:53 +02:00
bernat 4d448fc49c Removed some Epsion from calculations 2020-04-14 21:00:04 +02:00
Axel1092 6f3c4788d8 Added displacement to signals overlapping driving lanes. Fixed crash when closing spawn_npc with signals. 2020-04-14 21:00:04 +02:00
Marc Garcia Puig 0480feb230 Prevent sedewalks to be smoothed in junctions 2020-04-14 11:32:44 +02:00
Axel1092 6bcb390d1f Fixed crash when generating signals with an s position equal to the road length. 2020-04-13 18:26:11 +02:00
Marc Garcia Puig 3443a64db2 Fixed GetCornerPositions 2020-04-13 16:50:32 +02:00
Marc Garcia Puig d23e3d5f82 Fixed waypoint positive lanes offset heading 2020-04-13 16:50:32 +02:00
Marc Garcia Puig 1a9f87ff48 Fixed a rotation calculus error on lanes with positive id affected by a lane offset 2020-04-13 16:50:32 +02:00
Marc Garcia Puig 487d4e678b Some PR fixes 2020-04-13 16:50:32 +02:00
Marc Garcia Puig b28cb75273 Fixed codacy issue 2020-04-13 16:50:32 +02:00
Axel1092 d5c57e8903 Added parameter to enable/disable junction smooting. Moved config file variables to CarlaGameInstace for opendrive generation parameters. 2020-04-13 16:50:32 +02:00
Axel1092 c845db64e4 Rebase fix. 2020-04-13 16:50:32 +02:00
Axel1092 856979906e Split code into more functions. 2020-04-13 16:50:32 +02:00
Axel1092 ced9fccd18 Compilation fix. 2020-04-13 16:50:32 +02:00
Axel1092 6cc59261d8 Added modified laplacian smoothing for generated meshed in junctions. 2020-04-13 16:50:32 +02:00
Marc Garcia Puig e2c0349ef6 Exposed max chunk size to the PythonAPI 2020-04-13 16:50:32 +02:00
Axel1092 5ddb97a58e Added parameter to disable rendering meshes generated from OpenDRIVE. 2020-04-13 16:50:32 +02:00
Marc Garcia Puig 40ee5705d6 Added walls to the mesh chunks 2020-04-13 16:50:32 +02:00
Marc Garcia Puig 00a73c4f02 Splited the map generation in chunks 2020-04-13 16:50:32 +02:00
Marc Garcia Puig 832b293a33 Added MeshFactory + improved code architecture 2020-04-13 16:50:32 +02:00
codeffee 01f98aac07 Fixing Windows compilation errors and some warnings 2020-04-13 13:06:38 +02:00
doterop a108bf5b3b Updated default value for TM. Now should be retrocompatible. 2020-04-13 13:06:38 +02:00
doterop 66efc6ea17 Cleaned some TM includes 2020-04-13 13:06:38 +02:00
doterop 2f6b8e048f Change to support default parameter to keep compatibility 2020-04-13 13:06:38 +02:00
doterop 79d6298395 Cleaned logs 2020-04-13 13:06:38 +02:00
doterop 64cc616938 Added changes to SetAutopilot BatchCommand 2020-04-13 13:06:38 +02:00
doterop f2f4b229d7 Updated set_autopilot to get tm as a parameter 2020-04-13 13:06:38 +02:00
Praveen Kumar 6b1a5db4f6 Implemented carla::geom::Vector3D::MakeSafeUnitVector 2020-04-09 19:48:03 +02:00
Praveen Kumar ba6957b405 Magnitude guard on vector normalization. 2020-04-09 19:48:03 +02:00
berndgassmann b0787c0018
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-09 15:23:00 +02:00
Axel1092 9d76978f93 Fixed get_all_landmarks functions returning invalid landmarks when using world.get_map().get_all_landmarks(). 2020-04-09 14:47:49 +02:00
bernat 5e7c6bb783
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-09 12:18:23 +02:00
Jacopo Bartiromo b839cf3419
Minor changes to Traffic Manager (#2708)
* removes vertical offset
changes in radius
radius increasing with higher velocity

* changes to collision detection policy

* introducing radius as parameter
removed radius increasing with velocity
2020-04-09 09:56:04 +02:00
berndgassmann 53967647ed
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-08 16:00:03 +02:00
Praveen Kumar 30edd5ce2c Implemented changes to track multiple hero vehicles
in hybrid physics mode.
2020-04-08 15:45:52 +02:00
berndgassmann f02c269bd1
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-08 14:55:41 +02:00
Praveen Kumar 8c7ac56f8f Implemented changes to account for corners
of unregistered vehicles during localization.
2020-04-08 14:26:34 +02:00
berndgassmann cf413fa8b4
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-07 17:05:32 +02:00
Néstor Subirón 499b189fe7 Fix compilation issue with BullseyeCoverage 2020-04-06 17:40:25 +02:00
Bernd Gassmann f3930a8f0f Ensure make package always package the correct version
Add postfix to libcarla_client{_rss}{_debug}.a in RSS variant.
make package target always rebuilds the final python shared library and
so cannot package wrong version.
Put LGPL lisence in python egg if RSS is linked.
2020-04-03 19:57:44 +02:00
berndgassmann 07fafaea67
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-02 19:59:17 +02:00
Axel1092 bdd0aaaac9 Added function to retrieve landmarks in the same group. 2020-04-02 19:01:31 +02:00
Axel1092 e24bcebfbf Added get landmarks functions from map. 2020-04-02 19:01:31 +02:00
Bernd Gassmann 938c4516ae Added detailed documentation of RSSSensor 2020-04-01 11:51:33 +02:00
berndgassmann 5743930238
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-04-01 08:25:14 +02:00
Praveen Kumar fe86dc21d1 Changed ApplyBatchSync call by passing do_tick_cue=true
to reduce longitudinal oscillation in hybrid physics mode.
2020-03-31 23:04:04 +02:00
Praveen Kumar 58c7fe3539 Implemented waiting trigger in localization stage
to initiate pipeline in synchronous mode.

Restricting teleportation to forward direction only
by checking teleportation transform in batch control stage.
2020-03-31 23:04:04 +02:00
Bernd Gassmann 179ec725fa Fix some robustness issues
Create RssCheck (again) when Listen is called to prevent from creating
loggers all the time someone lopps over the actor list and the
actor/sensor instances getting created.

Only traverse actor list in CreateWorldModel once.

tbb::parallel_for_each() gets already created actors and doesn't loop
itself over actor list (which blocks).

Finally changed code format of RSS to keep 120 chars per line.
2020-03-31 18:30:50 +02:00
berndgassmann 849a6c54c5
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-03-31 18:28:22 +02:00
Praveen Kumar 858a58556f
Hot Fixes For Hybrid Physics Mode (#2680)
* Improved braking, collision negotiation.

* Improved braking algorithm for smoother approach
to lead vehicle.

* Implemented smoother path boundary modification
to aid smoother braking.

* Re-worked collision negotiation algorithm.

* Improved collision candidate filtering.

* Added safe-guard in case of vehicle removal
in collision stage.

* Used local variable for heavily referenced object
in localization stage.

* Implemented vector relative velocities
for motion planner's collision consideration.

* Moved collision candidate sorting logic
from collision stage to localization stage.

* Sorting collision candidates using their ids
instead of shared pointers to avoid memory corruption.

* Improved conditions for collision consideration
for greater efficiency.

* Removed fps limit in async mode.

* Hybrid physics mode

* Introduced hybrid physics mode parameter
* Implemented physics independent velocity computation
* Modified localization stage to be physics agnostic

* Fixing velocity compute interval in sync and async mode.
Made motion planner stage work with internally computed velocities.

* Made collision stage agnostic to actor physics

* Sampling waypoint buffer for teleportation window

* WIP: Teleportation changes

* WIP2: Teleportation changes

* Fixes waypoint window and vehicle spawning

* hotfix to performance benchmark

* comment out debugs

* changelog

* fixes collision bug

* fixes package error and out_of_range bug

* WIP: Hybrid mode oscillation bug

* Added vertical offset parameter for physics-less mode.
Restricting longitudinal waypoint offset to forward only.

* remove comment

Co-authored-by: Jacopo Bartiromo <jackbart94@gmail.com>
Co-authored-by: Jacopo Bartiromo <32928804+jackbart94@users.noreply.github.com>
2020-03-31 14:56:18 +02:00
Axel1092 1e06309953 Added warning when signals overlap driving lanes. 2020-03-31 12:12:02 +02:00
Marc Garcia Puig 0eed245e34 Review fixes 2020-03-31 12:11:39 +02:00
Marc Garcia Puig 5520f31d0a Exposed road mesh generation params to PythonAPI 2020-03-31 12:11:39 +02:00
Marc Garcia Puig b94180b0ce Fixed wall generation 2020-03-31 12:11:39 +02:00
Marc Garcia Puig 0999b0ba05 Added basic walls to standalone OpenDRIVE mode 2020-03-31 12:11:39 +02:00
berndgassmann dc6c80a820
Merge branch 'master' into feature/integrate_rss_3.0.0 2020-03-31 10:28:35 +02:00