Skip to content

Commit

Permalink
Merge with dev
Browse files Browse the repository at this point in the history
  • Loading branch information
JoseM98 committed Apr 18, 2024
2 parents bc96c5f + 20a4a46 commit 1ec58b4
Show file tree
Hide file tree
Showing 83 changed files with 1,872 additions and 573 deletions.
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
* Added vehicle doors to the recorder
* Adjusted vehicle BoundingBox when the vehicle opens the doors.
* Added functions to get actor' components transform
* Added posibility to Digital Twins to work with local files (osm and xodr)
* Enable proper material merging for Building in Digital Twins
* Added functions to get actor' bones transforms
* Added functions to get actor' bones and components names
* Added functions to get actor' sockets transforms
* make PythonAPI Windows: Fixed incompatibility issue with Anaconda due `py` command.
* Added function to get actor' sockets names
* Fixed bug in python agents when vehicle list was empty causing a check on all vehicles (BasicAgent.py) and detected pedestrians as vehicles if no pedestrains are present (BehaviourAgent.py)
* Extended debug drawing functions to allow drawing primitives on HUD layer
* Added possibility to change gravity variable in imui sensor for the accelerometer
* Fixed ROS2 native extension build error when ROS2 is installed in the system.
* ROS2Native: Force fast-dds dependencies download to avoid build crash when boost_asio and tinyxml2 are not installed in Linux.

## CARLA 0.9.15

Expand Down Expand Up @@ -31,6 +43,8 @@
* Fixed bug causing the `FPixelReader::SavePixelsToDisk(PixelData, FilePath)` function to crash due to pixel array not set correctly.
* Fixed segfaults in Python API due to incorrect GIL locking under Python 3.10.
* Fixed the import script, where could use any other TilesInfo.txt if the destination folder has many
* Fixed PythonAPI not installing on Debian due to deprecated function of distro in setup.py. Less ambiguous error for other posix platforms.


## CARLA 0.9.14

Expand Down
2 changes: 1 addition & 1 deletion Co-Simulation/Sumo/sumo_integration/sumo_simulation.py
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ def _get_sumo_net(cfg_file):
net_file = os.path.join(os.path.dirname(cfg_file), tag.get('value'))
logging.debug('Reading net file: %s', net_file)

sumo_net = traci.sumolib.net.readNet(net_file)
sumo_net = sumolib.net.readNet(net_file)
return sumo_net

class SumoSimulation(object):
Expand Down
6 changes: 3 additions & 3 deletions Docs/3rd_party_integrations.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ CARLA has been developed to integrate with several 3rd party applications in ord
- [__Scenic__](tuto_G_scenic.md)
- [__CarSIM__](tuto_G_carsim_integration.md)
- [__Chrono__](tuto_G_chrono.md)
- [__OpenDRIVE__](adv_opendrive.md)
- [__ASAM OpenDRIVE__](adv_opendrive.md)
- [__PTV Vissim__](adv_ptv.md)
- [__RSS__](adv_rss.md)
- [__AWS and RLlib__](tuto_G_rllib_integration.md)
Expand Down Expand Up @@ -59,9 +59,9 @@ CARLA's integration with CarSim allows vehicle controls in CARLA to be forwarded

Learn how to use CARLA alongside CarSIM [here](tuto_G_carsim_integration.md).

## OpenDRIVE
## ASAM OpenDRIVE

[__OpenDRIVE__](https://www.asam.net/standards/detail/opendrive/) is an open format specification used to describe the logic of a road network intended to standardise the discription of road networks in digital format and allow different applications to exchange data on road networks. Please refer to the full documentation [__here__](adv_opendrive.md)
[__ASAM OpenDRIVE__](https://www.asam.net/standards/detail/opendrive/) is an open format specification used to describe the logic of a road network intended to standardise the discription of road networks in digital format and allow different applications to exchange data on road networks. Please refer to the full documentation [__here__](adv_opendrive.md)

## RSS - Responsibility Sensitive Safety

Expand Down
21 changes: 20 additions & 1 deletion Docs/adv_digital_twin.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,26 @@ The __Digital Twin Tool__ enables procedural generation of unique 3D environment

## Building the OSM renderer

If you are using Linux, you have the option of using the OSM renderer in the CARLA interface to navigate a large OSM map region that you have downloaded. You first need to build the OSM renderer. Run `make osmrenderer` inside the CARLA root directory. You may need to upgrade your version of CMake to v3.2 or above in order for this to work. This will create two folders in your build directory called `libosmcout-source` and `libosmcout-build`. Windows users do not have the option of using the OSM renderer and must use directly a URL.
If you are using Linux, you have the option of using the OSM renderer in the CARLA interface to navigate a large OSM map region that you have downloaded. You first need to build the OSM renderer before proceeding to build CARLA. Run `make osmrenderer` inside the CARLA root directory. You may need to upgrade your version of CMake to v3.2 or above in order for this to work. This will create two folders in your build directory called `libosmcout-source` and `libosmcout-build`. Before proceeding to build CARLA, you need to then edit the `Build.sh` file in the directory `$CARLA_ROOT/Build/libosmcout-source/maps` like so, to ensure the executable is found:

```bash
if [[ -x ../Import/src/Import ]]; then
importExe=../Import/src/Import
elif [[ -x ../debug/Import/Import ]]; then
importExe=../debug/Import/Import
elif [[ -x ../build/Import/Import ]]; then
importExe=../build/Import/Import
################### Add this line ####################
elif [ -x ../../libosmscout-build/Import/Import ]; then
importExe=../../libosmscout-build/Import/Import
#######################################################
else
echo "Cannot find Import executable!"
exit 1
fi
```

Then continue to build CARLA in the normal way. Windows users do not have the option of using the OSM renderer and must directly the URL.

## Downloading and preparing OSM map data

Expand Down
4 changes: 2 additions & 2 deletions Docs/adv_multigpu.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ The parameters we can use are:

For example

**./CarlaUE4.sh --nullrhi**
**./CarlaUE4.sh -nullrhi**

The primary server will use by default the port 2002 to listen for secondary servers. If you need to listen on another port, then you can change it with the flag

**./CarlaUE4.sh --nullrhi -carla-primary-port=3002**
**./CarlaUE4.sh -nullrhi -carla-primary-port=3002**

## Secondary servers

Expand Down
8 changes: 4 additions & 4 deletions Docs/adv_opendrive.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# OpenDRIVE standalone mode
# ASAM OpenDRIVE standalone mode

This feature allows users to ingest any OpenDRIVE file as a CARLA map out-of-the-box. In order to do so, the simulator will automatically generate a road mesh for actors to navigate through.
This feature allows users to ingest any ASAM OpenDRIVE file as a CARLA map out-of-the-box. In order to do so, the simulator will automatically generate a road mesh for actors to navigate through.

* [__Overview__](#overview)
* [__Run a standalone map__](#run-a-standalone-map)
Expand All @@ -26,9 +26,9 @@ Traffic lights, stops and yields will be generated on the fly. Pedestrians will
---
## Run a standalone map

Open an OpenDRIVE file is just a matter of calling [`client.generate_opendrive_world()`](python_api.md#carla.Client.generate_opendrive_world) through the API. This will generate the new map, and block the simulation until it is ready. The method needs for two parameters.
Open an ASAM OpenDRIVE file is just a matter of calling [`client.generate_opendrive_world()`](python_api.md#carla.Client.generate_opendrive_world) through the API. This will generate the new map, and block the simulation until it is ready. The method needs for two parameters.

* __`opendrive`__ is the content of the OpenDRIVE file parsed as a string.
* __`opendrive`__ is the content of the ASAM OpenDRIVE file parsed as a string.
* __`parameters`__ is a [carla.OpendriveGenerationParameters](python_api.md#carla.OpendriveGenerationParameters) containing settings for the generation of the mesh. __This argument is optional__.

* __`vertex_distance`__ *(default 2.0 meters)* — Distance between the vertices of the mesh. The bigger, the distance, the more inaccurate the mesh will be. However, if the distance is too small, the resulting mesh will be too heavy to work with.
Expand Down
4 changes: 2 additions & 2 deletions Docs/build_faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ CARLA forum</a>

> CARLA is a performance demanding software. At the very minimum it requires a 6GB GPU or, even better, a dedicated GPU capable of running Unreal Engine.
>
> Take a look at [Unreal Engine's recommended hardware](https://www.ue4community.wiki/recommended-hardware-x1p9qyg0).
> Take a look at [Unreal Engine's recommended hardware](https://dev.epicgames.com/documentation/en-us/unreal-engine/hardware-and-software-specifications-for-unreal-engine).
---

Expand Down Expand Up @@ -365,7 +365,7 @@ CARLA forum</a>
>In Windows it will be the default Python version for:
> py -3 --version
> python --version
>Make sure you are running your scripts with the version of Python that corresponds to your `.egg` file.
>In Linux, you may also need to set your Python path to point to the CARLA `.egg`. To do this, run the following command:
Expand Down
2 changes: 1 addition & 1 deletion Docs/core_concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ __Blueprints__ are already-made actor layouts necessary to spawn an actor. Basic

### 3rd- Maps and navigation

__The map__ is the object representing the simulated world, the town mostly. There are eight maps available. All of them use OpenDRIVE 1.4 standard to describe the roads.
__The map__ is the object representing the simulated world, the town mostly. There are eight maps available. All of them use ASAM OpenDRIVE 1.4 standard to describe the roads.

__Roads, lanes and junctions__ are managed by the [Python API](python_api.md) to be accessed from the client. These are used along with the __waypoint__ class to provide vehicles with a navigation path.

Expand Down
28 changes: 28 additions & 0 deletions Docs/core_map.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ After discussing about the world and its actors, it is time to put everything in
- [Add map package](tuto_M_add_map_package.md)
- [Add map source](tuto_M_add_map_source.md)
- [Alternative methods](tuto_M_add_map_alternative.md)
- [__Additional maps__](#additional-maps)


---
Expand Down Expand Up @@ -257,6 +258,9 @@ Non-layered maps are shown in the table below (click the town name to see an ove
| [__Town11__](map_town11.md) | A Large Map that is undecorated. Serves as a proof of concept for the Large Maps feature. |
| [__Town12__](map_town12.md) | A Large Map with numerous different regions, including high-rise, residential and rural environments.|

!!! note
Town06 and Town07 are additional content which does not come with the standard CARLA package. Please see the [additional maps section](#additional-maps) for details on how to import these.

### Layered maps

The layout of layered maps is the same as non-layered maps but it is possible to toggle off and on the layers of the map. There is a minimum layout that cannot be toggled off and consists of roads, sidewalks, traffic lights and traffic signs. Layered maps can be identified by the suffix `_Opt`, for example, `Town01_Opt`. With these maps it is possible to [load][load_layer] and [unload][unload_layer] layers via the Python API:
Expand Down Expand Up @@ -291,3 +295,27 @@ CARLA is designed to be extensible and highly customisable for specialist applic
* [__Add map package__](tuto_M_add_map_package.md)
* [__Add map source__](tuto_M_add_map_source.md)
* [__Alternative methods__](tuto_M_add_map_alternative.md)

## Additional maps

Each release has it's own additional package of extra assets and maps. This additional package includes the maps __Town06__ and __Town07__. These are stored separately to reduce the size of the build, so they can only be imported after the main package has been installed.

__1.__ [Download](https://github.com/carla-simulator/carla/blob/master/Docs/download.md) the appropriate package for your desired version of CARLA.

__2.__ Extract the package:

- __On Linux__:

- move the package to the _Import_ folder and run the following script to extract the contents:

```sh
cd path/to/carla/root

./ImportAssets.sh
```

- __On Windows__:

- Extract the contents directly in the root folder.

---
Loading

0 comments on commit 1ec58b4

Please sign in to comment.