RoboTerrain includes a diverse collection of Gazebo Fortress simulation worlds designed to challenge mobile robots across a range of unstructured and semi-structured terrains. All world files live underDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/jackvice/RoboTerrain/llms.txt
Use this file to discover all available pages before exploring further.
ros2_ws/src/roverrobotics_ros2/roverrobotics_gazebo/worlds/ and are selected at launch time via the world argument in the respective launch file. Mars terrain models from the Leo Rover simulator package are located separately under ros2_ws/src/leo_simulator-ros2/leo_gz_worlds/worlds/.
Available Worlds
Inspection Worlds
Industrial inspection environments filled with boxes and obstacles for navigation benchmarking.
Maze Worlds
Structured corridor environments for evaluating path planning and obstacle avoidance.
Outdoor Terrain Worlds
Natural and extreme off-road terrain for testing terrain traversal and VORT metrics.
MarsYard Worlds
Photorealistic Mars analog terrain models for planetary robotics research.
Inspection Worlds
| File | Description |
|---|---|
inspection_simple.world | A sparse open inspection area with minimal clutter — ideal for baseline navigation runs and rapid iteration. |
inspection_boxes.world | Inspection site with a standard box layout. |
inspection_boxes_v3.world | Dense box configuration used for Active Vision research. |
inspection_boxes_v4.world | Industrial inspection site with a balanced obstacle density — the default world for Leo_rover_fisheye.launch.py. |
inspection_boxes_x10.world | High-density box variant (10×) for stress-testing social navigation. |
inspection_boxes_x10_v2.world | Revised high-density variant used for the MDPI social navigation publication. |
inspection.world | Classic inspection environment. |
Maze Worlds
| File | Description |
|---|---|
maze_simple.sdf | A clean, rectangular maze with wide corridors — a good starting point for evaluating global planners. |
maze_pillars.sdf | A maze variant with pillar obstacles instead of walls, creating a partially occluded navigation challenge. |
maze_clean.sdf | A streamlined maze without visual noise, intended for pure planning benchmarks. |
maze_empty.sdf | Empty maze shell with no internal obstacles. |
maze.sdf | Standard maze layout. |
maze_and_person.sdf | Maze with a static person actor pre-placed. |
Outdoor Terrain Worlds
| File | Description |
|---|---|
island.sdf | An outdoor terrain island with varied elevation and natural ground features. This is the current default world for 4wd_rover_gazebo.launch.py. |
rubicon.sdf | Extreme off-road rocky terrain modelled after the Rubicon Trail. Use this world to stress-test VORT (Velocity Over Rough Terrain) and terrain-crossing performance. |
simplecave3.sdf | Narrow cave-like passage — useful for confined-space navigation research. |
pillars.sdf | Open area with scattered pillar obstacles. |
depot.sdf | Warehouse depot layout. |
fortress.sdf | Fortress-style walled environment. |
office_cpr_construction.sdf | Clearpath Robotics CPR construction site in SDF format. Requires the Clearpath model assets (see IGN_GAZEBO_RESOURCE_PATH in the launch file). |
office_cpr_construction.world | Legacy .world format of the CPR construction site. |
Legacy and Experimental Worlds
| File | Description |
|---|---|
agriculture.world | Agricultural field setting. |
yosemite.world | Yosemite terrain model. |
simple_40m2.world | Minimal 40 m² open area — useful for quick integration tests. |
inspection_simple_ode.world | ODE physics engine variant of the inspection simple world. |
inspection_simple_odev2.world | Second ODE variant with updated solver settings. |
inspection_simple_backup.world | Backup snapshot of the inspection simple world. |
MarsYard Worlds
These worlds are provided by theleo_gz_worlds package at ros2_ws/src/leo_simulator-ros2/leo_gz_worlds/worlds/.
| File | Description |
|---|---|
leo_empty.sdf | Minimal empty Leo Rover world with Ignition physics and sensor plugins configured. |
marsyard2020.sdf | MarsYard 2020 photorealistic analog terrain model. |
marsyard2021.sdf | Updated 2021 MarsYard terrain with revised surface topology. |
marsyard2022.sdf | Latest MarsYard 2022 terrain — highest fidelity, recommended for planetary navigation studies. |
The
default_value='island.sdf' is currently active in 4wd_rover_gazebo.launch.py. All other world lines are commented out and can be enabled by following the steps below.Switching Worlds
The active world is controlled by theDeclareLaunchArgument block near the top of the launch file. Only one default_value line should be uncommented at a time.
Uncomment the desired world
Locate the For example, to switch to the Rubicon world:
declare_world_cmd block and comment out the active line, then uncomment the world you want:Leo Rover Worlds
Leo_rover_fisheye.launch.py uses its own DeclareLaunchArgument block and defaults to inspection_boxes_v4.world. The available worlds for the Leo Rover pipeline include the inspection, construction, and island environments.
The
world_name variable inside Leo_rover_fisheye.launch.py is hardcoded to 'inspect' (used for the dynamic pose bridge topic /world/inspect/dynamic_pose/info and actor topics). If you switch to the construction or island world, update world_name in the launch file to match, or the ros_gz_bridge dynamic pose topic will not resolve correctly.