Sketching scenes before building a CARLA map
CARLA needs a real map — an OpenDRIVE .xodr plus a 3D mesh — to run a scenario. Producing that map is a job for a dedicated tool. But before that, it often helps to have a clear top-down sketch of what you intend to build: the road layout, the participants, and the motion. drawtonomy is good for that sketch.
What this is good for
Section titled “What this is good for”- Agreeing on a scene layout with a team before anyone spends time on the production map.
- A top-down figure of a CARLA scenario for a paper, slide, or design review.
- Authoring the storyboard and running it in the browser on esmini-WASM — actions, triggers, and a PASS / FAIL verdict — so you validate the scenario logic before CARLA’s sensor-grade run. See the scenario editor.
What this is not
Section titled “What this is not”- A way to produce a finished CARLA map. drawtonomy has no 3D mesh, no FBX export, and no Unreal Engine pipeline. Per its exporter documentation, the OpenDRIVE export is partial — no junction primitives, no traffic signs as
<signal>— so it is a seed, not a deliverable map. - A replacement for the map tools. For the actual map, the established route is a dedicated editor such as RoadRunner, with the CARLA Map Editor for adding signals.
The workflow
Section titled “The workflow”- Sketch the layout top-down with the Lane Tool and connect lanes with Next Lane links.
- Place participants using Vehicle / Pedestrian templates so the scene reads clearly.
- Show intended motion with Path arrows.
- Save as
.drawtonomy.svg— the editable source you revise as the plan changes. - Run the scenario in the browser to validate the storyboard logic, and export OpenDRIVE / OpenSCENARIO as a starting point for the downstream map tool.
- Build the production map downstream, keeping the drawtonomy file as the explanatory figure.
Related reading
Section titled “Related reading”- Scenario editor — author and run the storyboard in the browser.
- drawtonomy vs CARLA Map Editor
- CARLA ScenarioRunner (ecosystem)
- OpenSCENARIO editor use case
- What is OpenDRIVE?