- Live simulation — models, joint states, and sensor data streamed from a running Gazebo environment
- MCAP recordings — play back previously recorded sessions with synchronized scrubbing across all panels
- ULog flight logs — PX4 flight data rendered as interpolated 3D pose with attitude and position channels
Camera Controls
Orbit
Left-click and drag to orbit around the focal point.
Zoom
Right-click and drag (or scroll wheel) to zoom in and out.
Pan
Middle-click and drag to pan the camera laterally.
- Front / Side / Top — axis-aligned orthographic views
- Isometric — 45-degree perspective for general inspection
Key Capabilities
Model Loading
Model Loading
The viewer loads URDF and SDF models directly from the simulation or from local files. Meshes, materials, and collision geometries are rendered with correct transforms from the scene graph.
Joint Animation
Joint Animation
Joint states from live simulations or recorded files are applied to the model. Watch articulated robots move as the controller runs, or scrub through MCAP recordings to inspect motion frame by frame.
Point Cloud Rendering
Point Cloud Rendering
Lidar and depth sensor data can be displayed as point clouds with configurable color modes (intensity, height, range). Useful for verifying sensor coverage and obstacle detection.
TF Frame Display
TF Frame Display
Toggle coordinate frame axes to visualize the TF tree. Each frame is drawn at its resolved position and orientation, making it straightforward to debug transform chains between sensors, joints, and the world frame.
ULog Pose Rendering
When you open a ULog file, the 3D viewer reconstructs the vehicle’s pose from position and attitude channels using binary search and linear interpolation. As you scrub the timeline, the vehicle moves through 3D space in sync with the telemetry plots, GPS map, and log view. This works without a model file — Substrate renders the pose using the default vehicle mesh.Entity Selection
Click any entity in the scene to select it. The selection is highlighted with an outline, and the Entity Inspector panel opens automatically to show the selected object’s properties, pose, and metadata.Split Views
Open multiple 3D Viewer instances in split panes to observe the same scene from different angles simultaneously. Each viewer maintains independent camera state.Rendering performance depends on your GPU. Integrated graphics will work for simple scenes, but dedicated GPUs are recommended for complex environments with multiple robots and dense point clouds.