Salta ai contenuti

Riproduzione — eseguire, cercare, seguire e registrare uno scenario

Tutto quello che serve per eseguire uno scenario si trova in una riga lungo la parte superiore della card LOGIC. La simulazione stessa è eseguita da esmini compilato per WebAssembly, direttamente nel vostro browser.

La riga di trasporto durante l'esecuzione — play, reset, tempo di simulazione, velocità, fotocamera di seguito, fantasma, verdetto

ControlloCosa fa
▶ / ❚❚Avvia o mette in pausa la simulazione. Mostra uno stato di caricamento mentre il runtime si avvia.
Torna all’inizio.
0.00sTempo di simulazione. Incrementa durante l’esecuzione.
1xVelocità di riproduzione — 0.25x, 0.5x, 1x, 2x, 4x.
Follow: OffBersaglio della fotocamera — Off, oppure una qualsiasi entità dello scenario.
GhostTracce di movimento. Apre un popover con OFF, 0.25s, 0.5s, 1s, 2s, 5s.
PASS / FAIL / RUN / IDLEIl badge di verdetto. Vedi Condizioni di fine e fallimento.

La card stessa ha altri due controlli: {x} apre il pannello dei parametri e delle variabili, e ˅ comprime la card per dare al canvas lo spazio intero. Il bordo superiore della card è un’impugnatura di ridimensionamento (Resize Logic pane) — trascinatela verso l’alto quando il grafico di fase ha bisogno di più spazio.

Se non c’è strada, la riga di trasporto lo comunica: No road — draw a road or import .xodr, con entrambe le frasi come link.

Sotto la riga di trasporto c’è la timeline. Prima della prima simulazione mostra Run ▶ to see the timeline.

La timeline durante l'esecuzione — playhead, marcatore di inizio evento, blocchi attori

Una volta iniziata una simulazione, si riempie di:

  • Un blocco per attore, che si estende nel tempo in cui quell’attore sta facendo qualcosa.
  • Un marcatore dove inizia ogni evento.
  • Un playhead al tempo di simulazione corrente.

Cliccate o trascinate ovunque sulla timeline per cercare. La ricerca è esatta — ogni posa proviene dalla simulazione, quindi il frame in cui atterrate ha uno stato definito per ogni entità. Questo è quello che rende la riproduzione utile per la revisione: fermatevi al momento esatto di un sorpasso e ispezionate la geometria invece di indovinare mentre la simulazione continua.

Il righello non è etichettato con numeri, quindi leggete il tempo dall’indicatore 0.00s dopo la ricerca.

Il canvas durante l'esecuzione con Follow: Ego — il veicolo resta centrato mentre la fotocamera lo segue lungo la strada

Follow: Off è l’impostazione predefinita, e la fotocamera rimane dove l’avete lasciata. L’elenco a discesa mostra Follow: Off più una voce per entità — Follow: Ego, Follow: OverTaker, e così via.

Attivate questa opzione per qualsiasi simulazione più lunga di uno schermo. Le reti stradali importate sono spesso chilometri di lunghezza; senza un bersaglio di seguito gli attori guidano fuori dalla vista in pochi secondi e la simulazione sembra rotta quando in realtà non lo è.

Il canvas durante l'esecuzione con Ghost a 0.5s — il contorno della berlina marcato come traccia di movimento uniformemente spaziata lungo la strada

Ghost marca il contorno dell’attore sul canvas a intervallo fisso, lasciando una traccia di movimento visibile dietro di esso. Scegliete l’intervallo dal popover: OFF, 0.25s, 0.5s, 1s, 2s, 5s.

Poiché i marcatori sono uniformemente spaziati nel tempo, il loro spaziamento sul canvas legge la velocità — marcatori ammassati significano frenata, marcatori allargati significano accelerazione. È il modo più veloce per vedere un profilo di velocità senza leggere numeri.

I fantasmi si baked anche nelle esportazioni immagine e SVG, così una figura che salvate per una diapositiva mostra la traiettoria piuttosto che un singolo frame. Vedi Path and Footprint.

La riga di trasporto dopo una simulazione pulita — il badge verde PASS accanto al tempo di simulazione e alla timeline

BadgeSignificato
IDLENon in esecuzione.
RUNIn esecuzione, nessuna condizione di fallimento ancora attivata.
PASSRaggiunta la condizione di fine senza che nessuna condizione di fallimento fosse attivata.
FAILUna condizione di fallimento attivata; la simulazione si è fermata lì.

Quando una condizione di fallimento si attiva, il badge diventa rosso FAIL e un marcatore corrispondente × appare sulla timeline nel momento in cui si è attivato:

La riga di trasporto con un badge rosso FAIL, e un marcatore croce rosso sulla timeline dove la condizione di fallimento si è attivata

Non c’è un pulsante etichettato “Run” — il pulsante ▶ avvia lo scenario, e RUN è il badge che appare mentre è in corso.

Menu Hamburger → ExportExport video… registra la simulazione in un file video. L’esportazione avviene nel vostro browser, quindi nulla viene caricato. Le opzioni di rapporto di aspetto e fotocamera sono coperte in Simulate an OpenSCENARIO file in the browser.

Il resto del sottomenu Export è utile accanto ad esso: OpenSCENARIO (.xosc)… per lo scenario, .xodr (OpenDRIVE) per la strada, formati immagine per figure, e Copy URL per un link condivisibile.

Export → OpenSCENARIO (.xosc)… (solo in modalità Scenario) non scarica subito — apre prima una piccola finestra di dialogo:

CampoScelte
VERSIONLa versione dello schema OpenSCENARIO — 1.0, 1.1, o 1.2 (default 1.1). 1.3 è mostrato ma disabilitato (“coming soon”), non ancora selezionabile.
INCLUDE.xosc da solo, o .xosc + .xodr insieme (la strada più lo storyboard).
TARGET SIMULATOResmini o Generic. esmini ottimizza l’output per il runtime esmini.
FILE NAMEIl nome base del file (o dei file).

Scegliete la versione e il raggruppamento di cui avete bisogno, quindi confermato per scaricare. La voce .xodr (OpenDRIVE) accanto ad essa, per contrasto, scrive la strada immediatamente senza finestra di dialogo (nome predefinito Untitled-<date>-<time>.xodr). Per il viaggio di andata e ritorno completo in esmini, consultate Export to OpenDRIVE / OpenSCENARIO / esmini.

RANGE decide quanta parte della simulazione raggiunge il file. Si apre su Full — l’intera simulazione, esattamente come prima. Cambiatela su Trim per registrare una fetta:

  1. Aprite ExportExport video…, quindi cliccate su Trim.

  2. Due impugnature appaiono sulla barra di ricerca, una per ogni estremità dell’intervallo. Quello che si trova tra di loro è quello che viene registrato; il resto della barra si oscura.

    La barra di ricerca con Trim attivato — l'intervallo registrato evidenziato tra un'impugnatura iniziale e finale, la simulazione oscurata su entrambi i lati

  3. Trascinate una qualsiasi impugnatura lungo la barra, oppure digitate i secondi in Start [s] e End [s]. La finestra di dialogo mantiene il conteggio sotto di esse — 5 s selected.

    La finestra di dialogo Export video con RANGE impostato su Trim, mostrando gli input Start e End e la lunghezza selezionata

  4. Cliccate su Start. Il file dura esattamente quanto l’intervallo scelto.

Il playhead rimane attivo mentre le impugnature sono visibili, così potete cliccare dentro l’intervallo e controllare un frame prima di registrarlo.

L’intervallo è deliberatamente non memorizzato: ogni volta che aprite Export video… si ricomincia da Full. Il rapporto di aspetto, la fotocamera e il fantasma sono uno stile di casa e persistono, ma un intervallo è legato a uno scenario — ogni simulazione ha una lunghezza diversa, quindi i secondi dell’ultima volta atterrerebbero nel posto sbagliato qui.

SintomoProbabile causa
L’attore non si muove maiNessun evento si è ancora attivato — controllate i SECONDS del trigger, o che la condizione Start della sua fase sia soddisfatta.
L’attore guida, quindi si ferma per sempreHa raggiunto la fine della strada. Estendete la strada o importate un .xodr più lungo.
L’attore si muove fuori schermo immediatamenteLa fotocamera di seguito è Off.
Un evento Change Lane si attiva ma nulla si muove lateralmenteTARGET è ancora Same lane con l’attore che referenzia se stesso. Vedi Actions.
Due eventi accadono contemporaneamenteEntrambi i trigger sono ancora a 0.00 s.