* Adding ROS2 manager
* Trying to compile fastDDS in windows, but have problems with dependencies
* Camera sensors connected to ROS2, dependencies disabled temporaly
* Including enum with sensors list
* adding GNSS sensor capture
* adding IMU sensor capture
* adding DVS sensor capture
* adding Lidar sensor capture
* adding SemanticLidar and Radar capture
* adding ObstacleDetector and some fixes
* modify cmakelists, failed to find libatomic
* fixed libatomic
* compile fast-dds with libc++
* fixed compliation fast dds with libcxx
* linked carla with fastdds
* Fixed Fast-DDS lib
Now its compiled to a intermediate lib with a bridge so libstdc++ can be used
* moved all ros2 deps to ros2 folder
renamed types from .cxx to .cpp
* Finally FastDDS compiled and working inside CARLA
* exposed publish function for testing
* fixed code style
* make ros2 optional
* make ros2 optional
* Added defines to compile ROS2 code
* ros image publisher working
* deleted some buffer copies
* Added more topics and ROS2 types
* Adding sensor Transform as argument, and add function to send buffer or serialize and send buffer
* Removing empty buffer from DVS sensor
* fixed lidar publisher
* fixed lidar publisher
* Fix buffer of RGB in ROS2
* adding timestamp of each frame into ROS2 manager
* sending timestamps with frame to ROS2
* put apart timestamp from frame counter call
* adding BufferView to share buffers
* adding BufferView to share buffers
* adding ros_name attribute to all actors
* mapping ros_name for each actor
* ROS2 is now published in a different thread
Publishers now can be created on demand and be reused
Added subscriber for ego vehicle
Fixed build scripts
* forgot to add this fix
* add ros2 to windows scripts
* fixed default ros topic names
* fix topic name duplication
* Adding functions for enable/disable sensors publishing without listen to it
* Added Camera info and ROI types
RGB Camera now publishes in both topics
* move camera info immutable data to the constructor
* Publish transform for all topics
Create Camera DVS subtopics
Fixed bug with Lidar
* Added flip Y to semantic lidar
* Adding callbacks for subscribers from Unreal
* Adding camera info to ROS2 (resolution and FOV)
* Finished ROS2 naming from python
* Fixed bug with ros names
* Delete topics when deleting the sensors
* setting the rosname same as default no longer rewrites it
* ROS transform fix
* Added all camera topics with the image and camera info
Added vehicle control
Added clock publisher
* Change ros2 topic names for vehicle subscriber and clock publisher
* Rename vehicle control ros2 topic name
* rename subscriber type to CarlaEgoVehicleControl
* Fix semantic lidar default ros name
Fix sizeof the semantic lidar data buffer
* Changed controller stored as string to pointer
* Back to previous version for default hero ros name
Removed debug prints
* Remvoe callback when ego publisher disconnects
* Serializing DVS data before sending to ROS
* dvs camera image and lidar
* DVS Pointcloud publishing
* Remove unnecessary fields
* Send local transforms to ros
* avoid transform recalculation if not needed
* Optical Flow Camera fixed
* Set fixed branch for Fast-DDS to avoid cmake version change issues
* Finally Working on package
* Fix style from FastDDS auto generated files
* Added ros2 to ubuntu in jenkins
* removed ros2 from jenkins, test
* restore ros2 in jenkins
* fix copy shareds, and removed server dependency from libcarla
* test installing the fastdds dependencies in jenkins
* move installing deps to separate stage
* removed install deps
* Fixing test_benchmark_streaming
* Fixed imu orientation and camera info data
* Fixing test_benchmark_streaming.cpp with BufferView
* Removing DEBUG_ONLY()
* publish collision sensor
* Fixing unit-tests with the new BufferView
* camera info is set once
* Fix echo camera info
* fix transform rotation
* Fixing ros_name attribute creation
* fixed camera info and region of interest publish
* fix IMU compass
* Forgot to add ros2 flag to jenkins package
---------
Co-authored-by: bernatx <bernatx@gmail.com>
* Bitmap sent and drawn in widget texture with bugs
* Map bitmap shown on widget
* Concated meshes generated in the same lane to avoid errors during simplification
* Navigation added to widget
* Avoid Simplify to remove border vertices and try to parallel assets creation process
* Road Generation 0.1 version ready
* Removing Engine Association, Formatting CarlaTools Build dependencies
* Change container type of generated procedural mesh componetns to be supported by UPROPERTY
* Fixed indices jumping by two
* Added in separate thread junctions generation
* Started dynamic database creation
* Dynamic database creation temporally removed
* First step of merge. Coords of bottom left corner and top right corner
* Libraries added to build system
* Git ignore for osmrenderer to avoid ThirdParties directory to be tracked
* Lat and Lon coords for corners sent from server to client
* Transformed to local coords meshes' vertices' coords
* Coords format error fixed
* Saving xodr and osm files inside of OpenDrive folder
* Widget fixed
* UI design improved
* WIP Windows build system for osm-world-renderer
* Socket implementation replaced by boost asio framework in osmrenderer
* Added multithreaded simplification of meshes
* Build system adapted to wndows
* Headers fixed to avoid windows specific heraders compilation
* Remove warnings
* Added widget to import building from houdini
* Added origin latitude and longituda to OSM to OpenDRIVE conversion functions. Fixed Houdini importer widgets.
* Add Houdini plugin download to the build system
* Moved houdini blueprint. Houdini plugin now dowloads by default
* Added houdini download for windows
* OpenDriveToMap Now is a UOBject instead of widget
* Added Lane mark generation.
* Roads materials and distance field scale set to 0
* M_PI macro fixed for windows osm-renderer build system
* Added Lane Marking generation
* Fixed compilation issue related with std pair non copyable lane
* Fix bug where different lanes were concating. Fix bug where end of roadmark was creating an artifact
* Lanes Marks material assignation
* Fix compilation issue and reading from not valid memory crash
* Middle Lane mark duplication bug fixed - temp solution
* Added bumps along road
* Adding marchingcubes library and added to create junctions
* Added junctions generations using marching cube and smoothed
* Fixed linux compilation and removed couple warnings
* Using previous algorithim for two road connections
* Code cleanup
* Remove debug state
* Format Files
* Format third parties files
* Spaces removal
* Fix code format
* Added spawnning for trees
* New branch to don`t loose modifications in code
* Removing unnecesary spaces
* Set trees for designer
* Tag static mesh actor from road type
* One tile with landscape and road cut
* Changed format of For
* WidgetCreated
* Widget progress
* LevelCreator Update
* Folder for basicParameters in father map
* Father map from template
* Terrain mesh generated from noise and road mask
Road mask not applied
* Assign SubLevel by position
* Changed to static functions
* StrigUpdate
* Added missing UFUNCTIONS
* Trying to move Houdini actors to tiles
* Meshes from Houdini to Tiles
* Number of X and Y tiles exposed
* Modify to new functions
* Modifying code to create a new variable-offset and table to ingest blueprints
* Update assignTile Function
* Updating widget and cpp file to relocate meshes
* Update Widget and create local copy of OpenDriveToMap
* Added planes as landscape
* RoadImported fixed
* Simplification done in UE side
* Update Houdini pipeline
* Fixed osmrenderer compilation for windows
* Generate landscape and set materials
* Generate UVs for lane meshes. Generate Normals and Tangets for lane meshes
* Delete unnecesary files
* Widget updated
* Exposing different variables to BPs
* Update Assets
* Asset path names fixed
* Fixed height for misc objects, set default landscape
* Rotate Light boxes
* Adding OSM Importer plugin
* Fixed normals on sidewalks
* Update adding buildings plugin
* Adding missing BP
* Update
* Fix BP_Instanced
* Update OSMImporter
* Creating BP_BuildingCreator
* LevelCreator Fixed
* Update building asset creation
* If def add for osm renderer
* Building block variation and styles
* Updated values and generation for demo3
* Fix Widget
* Changed unreal FSocket for boost sockets. Fixed road position errors
* Update building creation
* Updated Building Height
* Fixing line colors
* Added Planes in missing stuff
* Update for meshes
* Update deformation, avoid creation of individual buildings and add check for deformation
* Deleted unnecesary files
* New branch to work on building generation
* Added shorts walls and roofs
* Improve triangulation of polygons using UE
* Fixing pipeline
* Disabling shadows for roads and terrain
* Updated default values for BP_Opendrivetomap
* Updated OpenDriveToMap
* Use Editor world instead of GetWorld
* Added HTTP module
* Change customfiledownloader API
* Adding debuginformation
* Using OpenDriveToMapObject
* Adding Debug stuff
* Expose Buildings names in ue4
* Remove from root when generation finished
* Adding Slopes to building generation
* Table update
* Set pivot point at centre of building and Set use of material instances
* Updating Buildings plane stuff
* Fixing walls for building generator
* Update data table
* Updated road generation
* Update DT
* Update Origin of map and set moving for large map
* Remove logs prepare blueprints for getting new info
* Update slope fix and material for slopes
* Updated Digital Twins for 12/06
* Added direct URL support
* Avoid some crashes and improve QoL
* Height fix
* Tried to expose largemap in tick
* New vegetation scatter tool
* Added Full largemap support
* Edit building levels in some type of levels
* Updated static meshes instead of procedural meshes
* Updated building generation and reduced logs
* Vegetation tool into landscape pipeline
* Demo ready for digital twins
* Automated download of plugin
* Update linux build script for UE4 Plugins
* Disable sidewalks in junctions
* Re enable sidewalksin crossing lanes
* Removed asserts added checks to avoid generation of sidewalks on road
* Optimizations for VRAM
* Move actors slowly to sub levels
* Added optimizations and support for smaller or bigger maps in tiles, modified TileSize
* Garage and shed styles
* Update generation stages
* Update garage and shed parameters
* Changed method generation to tile by tile
* Fixed memory leak and UOpenDriveToMap is a uobject now
* Fixed tile by tile generation
* Added Heightmap support to map gen
* last update
* Commandlet generation working
* Merge finished
* Update DefaultEngine.ini to rever default rhi
* Clean up HoudiniImporterWidget.cpp
* Add with editor and make editor only code
* Setup dependencies for CarlaTools plugin
* Update StreetMap plugin commit and gitignore
* Update Content version
* Update next content version
* Changed based type of OpenDrivetomap
* Remove intermediate files if need similar to BuildCarlaUE4.sh
* Update order of execution of donwload
* Try to run download plugins everytime is used
* Update packages sh avoid to delete anything
* Fixing setup in windows
* Add UE Constructor to Commandlet
* More fixes
* content version
* Update package sh and update
* Update Streetmap version
* Update dependencies
* Update StreetMap commit
* Fix typo in gitignore
* Update STMap plugin commit
* Revert latest changes in windows package script
* Update comments
---------
Co-authored-by: aollero <aollero@cvc.uab.cat>
Co-authored-by: aollero <adriollero@gmail.com>
Co-authored-by: Axel <axellopez92@outlook.com>
Co-authored-by: marionzki <mnoriegazamora@gmail.com>
Co-authored-by: bernatx <bernatx@gmail.com>
* Added way to download files from overpass api
* Save downloaded text to a file
* Changed log type for File manipulation
* Online process files when request is valid
* Correct file format
* Correct file format for UE4 class
* Fix compilation issue due to name change
* Create Widget with OpenFileDialogFunctionality
* Step xodr to map completed
* Generated Static meshes and replace procedural actors
* Created and saved assets during road generation
* Formatted file correctly
* OSM To ODR broguht to UE4
* Full pipeline working on linux
* Added osm2odr support in editor in Windos
* Added Widget to CartaTools
* Fixed Linux compilation error
* Added Carla Game Instance included to avoid compilation error
* Added Simplify to LibCarla, Added timers to measure time generation. Add mesh deformation during road creation.
* Fixed mesh format translations
* Concated meshes generated in the same lane to avoid errors during simplification
* Avoid Simplify to remove border vertices and try to parallel assets creation process
* Road Generation 0.1 version ready
* Removing Engine Association, Formatting CarlaTools Build dependencies
* Change container type of generated procedural mesh componetns to be supported by UPROPERTY
* Fixed indices jumping by two
* Cleaning branch
* Cleanup last spaces
* Remove spaces on Opendrivetowditor.cpp
* Added base class for spring based vegetation simulation
* Excluded small bones from Inertia tensor computation. Added eigen 3.1.0 as dependency for vegetation modules.
* Added patch for eigen 3.1.0 in windows.
* Fixed windows compilation with eigen libraries
* Added automatic hierarchy extraction from skeletal mesh to spring based skeleton. Exposed custom spring vegetation structs to editor.
* Reorganized functions for spring based vegetation simulation. Fixed coordinate transformation bug (from UE left handed frame to right handed frame).
* Changes to use compile with CLang 10
* Improved spring strength settings for infividual branches. Enabled better debugging.
* added bush bp
added bush with sphere to the town10 map
* Fixed bush collision make car fly
* spring based vegetatation component updated
* System to get the bp from foliage mesh and instanciate if exists at runtime
* Added filters for spawning different types of foliage
* Spawning foliage hide and scaling it before showing.
* Added foliage bp class cache system to improve performance
* Changed Sphere Detection for Box and Implemented Object Pooling
* Fixed Dissapearing bushes, testing pooling
* Changed Sign function to not use clang's one
* Moved Spawner Logic out of Vehicle
* fix vegetation spawner now looks for new statich meshes every frame
* PR changes
* PR Changes
* Deleted spaces and scale spawn property
Co-authored-by: Axel <axellopez92@outlook.com>
Co-authored-by: Axel1092 <lopez1092@hotmail.com>
Co-authored-by: bernat <bernatx@gmail.com>
Build success
Added package
Remove delete workspace for testing
Clean workspace after build
Add deploy for testing
Relocation of Unreal Engine
Using absolute path for UnrealEngine
Execute shell
Test without remove at end
Using bash instead of shell
New jenkins file for testing nodes
new tag
modified
modify 'test' stage
all in GPU
tags
all in 'build' and 'gpu'
Adjust some scripts to run smooth on GPU slave
force deploy always
Disable docker push
Remove all on slaves at end
add some locks
add some parallel stages
Fix windows package, now it copies all required files
Add 7zip option to compress package for windows
Add 'make CarlaUE4Editor' to windows
Fix the program files path for windows 64
More jobs on parallel
Add Update.bat to windows pipeline
Fixing make CarlaUE4Editor
Commenting stages in windows
Enable again download of content and fix artifact
Build only Ubuntu
Enable deploy of Docker
Make packaging of additional maps
Enabling windows build again
Adding Deploy for windows
Change URL to the new S3 buckets
Changed the Jenkins public IP
Fixes from Codacy
Disable Windows build
Add more time to smoke tests for connecting
Add 'run' option of examples without compilation
Enabled delete all after job
Adds a lock for the packaging
Removing all locks
Update the Doxygen step in Ubuntu
Fix nodes to use
* Initial implementation of t.m. performance script
* Remove redundant getLocation() calls
* Demo for inter-client communication via Carla server
* WIP: To do: For client usage needed to be changed.
* Instead or client instance episodeProxy is passed to TM
* Instead or client instance episodeProxy is passed to TM
* parmeter improvements (walkers,cars,signs,lights)
* adding section id to map setup
* fix manual_control to reload car with autopilot on
* Instead of client instance episodeProxy is passed to TM.
* WIP: Only added vehicle register via RPC server / client call in TM to
local instance from remote instance. Similarly other APIs we need to
added.
* Added all TM APIs
* carla client now can provide TM instance if required.
* While getting TM instance if server given data is not valid new TM
instace is created. Need to decide what to do with earlier registed
vehicle with previous TM.
* Updated with HealthCheckRemoteTM() function to check TM server status
instead of ResetAllTrafficLights() for any new user client.
* Dynamic port selection added to TM server instace (in case of multiple
TM serve run, it required).
* Fixed change map error
* If registered TM at carla server is not present then remote TM should be
freed and new local TM instance is created.
* Created Process for Local TM.
It cheaks with total registered vehicles in it, if no register vehicles
for 5 sec, it closes it self.
In python spawn_npc.py Client Timeout set to 10 sec. as creating Process
is system dependent call and takes time.
User has to unregister vehicle before destroying it (if activated with
TM). Also neet to check TM unregister function to remove vehicles from
register list.
* Fix for collision ignore bug
* Update TM exit function check to compare registered vehicles with world
actors that if any valid vehicle present cointinue to run the TM else
stop.
* Print removal
* Splited work of main for loop in ApplyBatchCommandsSync
* WIP! Trying to get client directly
* WIP! Trying to access episode properly without getting it from TM ctr
* Changes to BatchControlStage for Sync Mode
Changes to Parameters for Synch Mode
* Added port support for TM. Multiclient MultiTM
* Added additions for RPC Synchronous Tick to TM.
Error handeling and code organization.
* Exposed API for Sync Mode
* TMServer notifies Server that it is gonna be destroyed
* Exposed Python API for Sync Mode
* Add TM as separate process and synchronous tick calls
* SetSynchronousModeTimeOutInMiliSecond method added
* TM shutsdown and informs to the connected clients
* WIP! Map change issues again
* Updated Traffic Manager for:
1) Multi-client, Multi-TM (as required) can be reistered to server.
2) TM is not a PROCESS separated from the user-client.
3) TM will exit if user-client exit.
4) If server closed, TM also get closed by catching runtime err.
* Server side changes ...
* Fixed possible stall on TM destruction
* fixing collision stage + cybertruck not safe
* Merge branch 'master' into 'soumyadeep/traffic_manager'
* WIP! Disconnection of server has to be properly handled by clients
* format update
* Fix bug unsignalized junctions
* # WARNING: head commit changed in the meantime
Merge branch 'doterop/traffic_manager' into soumyadeep/traffic_manager
Updates for Syncronized Tick.
* Updated runtime exception in Episode for smooth exit if TN server closed
for any other user client.
* Better Exception handeling
* Merged with jackbart94/tm_reduce_getloc_calls
* Merged soumyadeep/traffic_manager.
Removed World getter and recovered Episode as a parameter of TM ctr.
Fixed syntax errors.
* Initial implementation of t.m. performance script
* Remove redundant getLocation() calls
* Demo for inter-client communication via Carla server
* WIP: To do: For client usage needed to be changed.
* Instead or client instance episodeProxy is passed to TM
* Instead or client instance episodeProxy is passed to TM
* parmeter improvements (walkers,cars,signs,lights)
* fix manual_control to reload car with autopilot on
* Instead of client instance episodeProxy is passed to TM.
* WIP: Only added vehicle register via RPC server / client call in TM to
local instance from remote instance. Similarly other APIs we need to
added.
* Added all TM APIs
* carla client now can provide TM instance if required.
* While getting TM instance if server given data is not valid new TM
instace is created. Need to decide what to do with earlier registed
vehicle with previous TM.
* Updated with HealthCheckRemoteTM() function to check TM server status
instead of ResetAllTrafficLights() for any new user client.
* Dynamic port selection added to TM server instace (in case of multiple
TM serve run, it required).
* Fixed change map error
* If registered TM at carla server is not present then remote TM should be
freed and new local TM instance is created.
* Created Process for Local TM.
It cheaks with total registered vehicles in it, if no register vehicles
for 5 sec, it closes it self.
In python spawn_npc.py Client Timeout set to 10 sec. as creating Process
is system dependent call and takes time.
User has to unregister vehicle before destroying it (if activated with
TM). Also neet to check TM unregister function to remove vehicles from
register list.
* Fix for collision ignore bug
* Update TM exit function check to compare registered vehicles with world
actors that if any valid vehicle present cointinue to run the TM else
stop.
* Splited work of main for loop in ApplyBatchCommandsSync
* WIP! Trying to get client directly
* WIP! Trying to access episode properly without getting it from TM ctr
* Changes to BatchControlStage for Sync Mode
Changes to Parameters for Synch Mode
* Added port support for TM. Multiclient MultiTM
* Added additions for RPC Synchronous Tick to TM.
Error handeling and code organization.
* Exposed API for Sync Mode
* TMServer notifies Server that it is gonna be destroyed
* Exposed Python API for Sync Mode
* Add TM as separate process and synchronous tick calls
* SetSynchronousModeTimeOutInMiliSecond method added
* TM shutsdown and informs to the connected clients
* WIP! Map change issues again
* Updated Traffic Manager for:
1) Multi-client, Multi-TM (as required) can be reistered to server.
2) TM is not a PROCESS separated from the user-client.
3) TM will exit if user-client exit.
4) If server closed, TM also get closed by catching runtime err.
* Fixed possible stall on TM destruction
* fixing collision stage + cybertruck not safe
* Merge branch 'master' into 'soumyadeep/traffic_manager'
* WIP! Disconnection of server has to be properly handled by clients
* format update
* Fix bug unsignalized junctions
* # WARNING: head commit changed in the meantime
Merge branch 'doterop/traffic_manager' into soumyadeep/traffic_manager
Updates for Syncronized Tick.
* Updated runtime exception in Episode for smooth exit if TN server closed
for any other user client.
* Better Exception handeling
* Merged with jackbart94/tm_reduce_getloc_calls
* Merged soumyadeep/traffic_manager.
Removed World getter and recovered Episode as a parameter of TM ctr.
Fixed syntax errors.
* Rebased with master
* Changes after rebase
* Solving tab errors
* Updated Changelog
* Removing Destroyed vehicle's from TM Server
* Fixed uint compatibility with Windows
* Merged soumyadeep/traffic_manager. Discarded destroyed actors
* -Removed unnecessary files
* restoring docs from rebase
* Fix windows compilation
* refactoring stage-related code
* more code refactoring
* When map change the simulation doesn't throw exception anymore
* Fixed incorrect episode
* Fixed map change and TM remote detached thread destruction
* Syntax and comments fixes
* Missed change on previous commit
* Fixed compile minor compile issue
* Cleaned and fixed some issues after merge
* fix to sync localization bugs
modified PID parameters
revamping spawn_npc
* deleted tm_spawn_npc
* fixes spawn error in sync mode
* Redoing TM sync logic
* finished performance benchmark for tm
* deprecated wrapped methods:
register_vehicle
unregister_vehicle
* New TM management
* Fixed sync mode on TM
* Cleaned TM of prints and unussed functions
* collision stage checks for (0,0,0) to ignore.
in memory map has an # between keys to avoid possible mixup.
fixed spawn_npc with new sync mode
* changelog
* added more connection retries
* fixed changelog + comments (see reviewable)
* Moved socket include's to single header
* Added missing line at the end of the file
* Fixed syntax errors
* final commit
* Minor correction in comment
* update copyright year to 2020 + removed break
* restoring unwanted changes
* patch for smoke test error
* Removed "todo" for pylint
Co-authored-by: Jacopo Bartiromo <32928804+jackbart94@users.noreply.github.com>
Co-authored-by: Praveen Kumar <35625166+pravinblaze@users.noreply.github.com>
Co-authored-by: Soumyadeep <soumyadeep.dhar@kpit.com>
Co-authored-by: joel-mb <joel.moriana@gmail.com>
Co-authored-by: Sekhar Barua <58979936+sekhar2912@users.noreply.github.com>
Co-authored-by: bernat <bernatx@gmail.com>
Co-authored-by: Marc Garcia Puig <marcgpuig@gmail.com>
Stop build if any error was found
Enable multiprocess compilation
Add BuildPythonAPI.bat to makefile
Add BOOST_ALL_NO_LIB as workaround for https://github.com/boostorg/python/issues/193
For the server the boost lib path was define as BOOST_LIBRARY_PATH and for the client as BOOT_LIB_PATH. To keep it uniform between linux and windows, the variable was rename as BOOST_LIB_PATH.