# Custom Gazebo Worlds
Create custom environments for the ARG simulation.
## Quick Start
1. Copy template world:
```bash
cp gazebo/worlds/custom_landing.sdf gazebo/worlds/my_world.sdf
```
2. Edit the world file
3. Run:
```bash
./scripts/run_ardupilot_sim.sh gazebo/worlds/my_world.sdf
```
## World Structure
```xml
0.001
1.0
0 0 10 0 0 0
0.8 0.8 0.8 1
true
0 0 1
0 0 1100 100
model://iris_with_ardupilot
iris
0 0 0.195 0 0 0
```
## Adding Objects
### Basic Shapes
```xml
true
5 0 0.5 0 0 0
1 1 1
1 1 1
0.8 0.2 0.2 1
```
### Cylinder
```xml
true
0 5 1 0 0 0
0.52
0.52
```
### Include Model
```xml
model://my_custom_model
obstacle_1
3 4 0 0 0 0.5
```
## Landing Pad with Rover
```xml
false
0 0 0.05 0 0 0
10
0.750.1
0.750.1
0.2 0.8 0.2 1
/landing_pad/cmd_vel
```
## Camera Sensor
Add to drone or create camera model:
```xml
0 0 -0.1 0 1.5708 0
true
30
1.047
640
480
/drone/camera
```
## Tips
- Use `true` for non-moving objects
- Pose format: `x y z roll pitch yaw`
- Angles are in radians
- Colors are RGBA (0-1 range)