holoride
Search Results for

    Show / Hide Table of Contents
    ❮ Setup
    Minimal Scene Setup ❯

    Building and Testing

    Thorough testing and validation are critical when developing comfortable in-var experiences. While prototyping in the Unity Editor is performed on desktop platforms, the final experience is designed to run natively on mobile hardware.

    flowchart TD
        Start([Development Mode]) --> DevChoice{How are you testing?}
        
        %% Left Branch: Editor
        DevChoice -->|Option A: In-Editor Prototyping| EditorPath["File Playback (No Vehicle Required)"]
        EditorPath --> ReplayObject("Load .holo / Replay ScriptableObject")
        ReplayObject --> ReplayBackend("Enable ReplayStateReceiverBackend")
        ReplayBackend --> Play("Press 'Play' to simulate ride")
    
        %% Right Branch: Hardware
        DevChoice -->|Option B: In-Vehicle Testing| MobilePath["Live Sensor Stream (Real-Time Telemetry)"]
        MobilePath --> SwitchAndroid("Switch Unity Platform to Android")
        SwitchAndroid --> ServiceBackend("Enable ServiceStateReceiverBackend")
        ServiceBackend --> SPE("Connects to Spatial Perception Engine <br> on mobile / retrofit hardware")
    
        %% Merging
        Play --> AppFinished([Vehicle Prefab Moves in Sync with the Telemetry])
        SPE --> AppFinished
    
        %% Styling (Borderless automatically via global CSS)
        style Start fill:#2196F3,color:#fff
        style EditorPath fill:#9C27B0,color:#fff
        style MobilePath fill:#FF9800,color:#fff
        style AppFinished fill:#4CAF50,color:#fff
        style DevChoice fill:#CCCCCC,stroke-width:0px
        style ReplayObject fill:#CCCCCC,stroke-width:0px
        style ReplayBackend fill:#CCCCCC,stroke-width:0px
        style Play fill:#CCCCCC,stroke-width:0px
        style SwitchAndroid fill:#CCCCCC,stroke-width:0px
        style ServiceBackend fill:#CCCCCC,stroke-width:0px
        style SPE fill:#CCCCCC,stroke-width:0px
    

    Replay Holo Files & Prototyping

    To allow you to iterate rapidly at your desk, the Spatial Experience SDK features a comprehensive Ride Replay pipeline. This system lets you play back recorded or simulated vehicle localization data directly inside the Unity Editor, simulating real-world movement and telemetry on demand.

    All recorded vehicle rides are represented in your assets as Replay scriptable objects.

    1. File Playback

    Replays are typically generated from real-world telemetry packets stored as .holo or .holo2 files.

    • Auto-import: A default, full-length Replay asset is automatically compiled whenever a .holo or .holo2 recording is imported into your Unity project assets.
    • Slices: You can create multiple custom Replay assets referencing different time slices of a single recording to test specific routes or events.
    Tip

    Synthetic Rides (Routes): You can also use Route assets (generated from .kml files or addresses) as a source for synthetic rides. To generate a Route asset from street addresses directly in Unity, right-click in the Project window and select Create > holoride > Route from Addresses.

    2. Configuring the Playback Backend

    To feed recorded ride telemetry to your scene, you must configure the ReplayStateReceiverBackend:

    1. Locate the StateReceiver component in your active scene or configuration.
    2. Under the Editor or Travel backend settings, select the ReplayStateReceiverBackend.
    3. Assign your desired Replay asset to the Replay inspector field.
    4. Tip: You can download a rich library of pre-recorded ride files from the official repository here🔗.
    Note

    Dynamic Recording: You can record your own live ride data (.holo files) during real-world tests. Simply trigger recordings directly via the Spatial Perception Engine.

    holoride Settings Page with focus on the StateReceiver section


    Live Vehicle Data Source (State Receiver)

    When compiling your build for real-world in-vehicle testing, you must configure the application to stream live telemetry from the vehicle's physical sensors instead of playing back files.

    • The Connection Backend: This stream is handled by the ServiceStateReceiverBackend, which connects securely to the Spatial Perception Engine running on the target device.
    • Activation: Locate your active StateReceiver component and select ServiceStateReceiverBackend as the Travel Backend target. This allows your app to dynamically bind to the vehicle software stack / retrofit Hardware on startup.

    ❮ Setup
    Minimal Scene Setup ❯
    In This Article

    Back to top
    ©   holoride
    Privacy   Imprint