OpenSCENARIO simulator — run .xosc in the browser, powered by esmini-WASM
Ce contenu n’est pas encore disponible dans votre langue.
drawtonomy is a free, browser-based whiteboard for driving
scenarios. Because OpenSCENARIO entities, paths, and trigger zones
are first-class shapes on the same canvas, drawtonomy also works as
a free, browser-based OpenSCENARIO simulator: drop in a .xosc
and the .xodr it lives on, and the embedded esmini-WASM runtime
simulates the storyboard right in your browser — with seek,
frame-step, ghost trails, a Follow Ego camera that pans with the ego, and
a one-click .webm export.
It runs in the browser. There is nothing to install, no MATLAB license, no C++ build, no account.
What’s actually doing the simulation
Section titled “What’s actually doing the simulation”drawtonomy is built on top of esmini — the
open-source reference OpenSCENARIO 1.x runtime developed by the
Swedish ADAS community — compiled to WebAssembly. When you drop in
a .xosc:
- The OpenDRIVE network is parsed and placed on the canvas.
- The
.xoscis handed toesmini-WASM, which executes the OpenSCENARIO storyboard exactly as native esmini does — acts, sequences, maneuvers, conditional triggers, parameter declarations, controllers. - Each frame, drawtonomy reads back the simulated entity poses and draws them on the canvas.
So the simulator semantics are esmini’s, not a separate
re-implementation, and all the credit for the runtime correctness
belongs to the esmini project and its maintainers. What drawtonomy
adds on top is the canvas-native shell around that runtime:
timeline scrubber, Follow Ego, Ghost trails, .webm export, sharing
a .drawtonomy.svg source, and the same canvas you author
scenarios on. None of that would be possible without esmini doing
the hard work underneath.
What you can do
Section titled “What you can do”- Load a
.xosc+.xodrpair by dragging them onto the canvas (or via Hamburger → Import → OpenSCENARIO). - Simulate, pause, and seek with frame-accurate precision — Space, arrow keys, timeline scrubber.
- Adjust simulation speed from 0.25× to 4× (preset chips + slider).
- Follow Ego for a camera that tracks the ego vehicle centred — Bbox / Follow Ego modes are also available as the camera for video export.
- Ghost trails — Path (polyline) and Footprint (sampled silhouette) at a configurable time interval, so you can see motion history at a glance.
- Re-simulate the storyboard after any canvas edit (move an entity, change a Path, swap a vehicle), so the simulation always reflects the current scenario rather than a stale snapshot.
- Export to
.webmwith aspect-ratio presets (16:9, 9:16, 1:1, 4:3, Free) — recording happens locally via the browser’sMediaRecorder, no upload, no account.
The full mechanics are in the How to: Simulate an OpenSCENARIO file guide.
How it compares to other driving scenario simulators
Section titled “How it compares to other driving scenario simulators”- esmini — the open-source OpenSCENARIO 1.x runtime that drawtonomy embeds. esmini is, simulator-wise, the same engine; drawtonomy just runs it in a browser instead of on a CLI. Pick native esmini when you need the OpenSceneGraph 3D viewer, headless CI mode, or the C++/Python APIs.
- CARLA — open-source AV simulator with full sensor models (camera, LiDAR, radar) and a Python OpenSCENARIO runner. Heavyweight install (multi-GB, GPU). Right when you need sensor data; overkill if you only want to simulate and see the scenario.
- MathWorks RoadRunner Scenario — commercial scenario authoring + playback inside RoadRunner. Excellent in a MATLAB / Simulink-heavy team; not free, not in the browser.
- Foretellix Foretify / IPG CarMaker / dSPACE ASM — enterprise scenario simulation platforms with OpenSCENARIO support, deep vehicle dynamics, and large catalogs. Procurement-scale tools; drawtonomy lives in a much smaller box.
- Truevision Designer — commercial 3D HD-map and scenario editor with playback. A desktop tool, not a browser one.
- LGSVL Simulator — was a popular open-source AV simulator with OpenSCENARIO support; the hosted service is no longer maintained.
drawtonomy’s slot in that line-up is narrow on purpose: it is the
free, browser-based, no-install option for simulating and
recording OpenSCENARIO files. If you ever need to look at a .xosc
and don’t want to spin up a desktop simulator just to do it, that’s
the slot.
For sensor simulation or a regression sweep over thousands of
scenarios, hand the same .xosc to esmini, CARLA, or an enterprise
simulator. See drawtonomy vs esmini
and drawtonomy vs CARLA for the
split.
When to reach for the browser simulator
Section titled “When to reach for the browser simulator”- Triage a failing CI scenario. Drop the
.xoscfrom CI into the browser, scrub to the moment of failure, screenshot. Faster than a full simulator boot. - Code review a scenario PR. A reviewer who doesn’t have esmini installed can still simulate the scenario by opening it in drawtonomy.
- Teach OpenSCENARIO. A class or workshop can simulate
.xoscfiles on student laptops without a local install. - Record a demo
.webmof the scene for a slide, a bug report, a customer demo, or a social post — directly in 16:9, 9:16, or 1:1. - Visually compare two scenarios by opening them in two tabs and scrubbing each.
- Eyeball a generated scenario from scenariogeneration or Scenic before committing to a long simulator run.
When this isn’t the right tool
Section titled “When this isn’t the right tool”- You need camera / LiDAR / radar sensor simulation → use CARLA, IPG CarMaker, Foretellix, or another full simulator. drawtonomy simulates the storyboard, not sensors.
- You’re running a regression sweep over thousands of scenarios → drive esmini or CARLA from a script.
- You need HD-map editing at production scale → use RoadRunner or Truevision Designer.
- You need the OpenSceneGraph 3D viewer that ships with native esmini → just run native esmini.
Open standards under the hood
Section titled “Open standards under the hood”The simulator loads ASAM OpenSCENARIO 1.x
.xosc files together with the ASAM OpenDRIVE
.xodr they reference. Both are open standards. The same .xosc
you simulate in drawtonomy can be handed to native
esmini, CARLA, RoadRunner Scenario, or any other
OpenSCENARIO-compliant runtime without a conversion step.
Acknowledgement — built on esmini
Section titled “Acknowledgement — built on esmini”The browser simulator on this page is built directly on top of the esmini project. The simulation core is esmini compiled to WebAssembly; the storyboard semantics, the OpenSCENARIO 1.x correctness, and the years of careful work behind them all come from the esmini maintainers and contributors, not from drawtonomy. Huge thanks to that team for stewarding the de-facto open reference for OpenSCENARIO playback. If drawtonomy’s the browser simulator is useful to you, please also star esmini on GitHub and support the project upstream.