<mujoco model='boxhead'>

  <default>
    <mesh scale='.01 .01 .01'/>
    <geom contype='1' conaffinity='1' condim='4' friction='.5 .02 .02'/>
    <default class='root'>
      <joint pos='0 0 0' limited='false' armature='0' damping='0' stiffness='0'/>
    </default>
  </default>

  <worldbody>
    <body pos='0 0 1.0' quat='1 0 0 -1' name='head_body'>
      <camera name="float_far"  pos="-4 0 2" xyaxes="0 -1 0 .5 0 1" fovy="90"/>
      <body name='egocentric_camera' pos='0 0.15 0.9' zaxis='0 -0.99503719021 0.09950371902'>
        <inertial pos='0 0 0' mass='1' diaginertia='1 1 1'/>
        <joint name='camera_height' type='slide' axis='0 1 0' limited='true' range='-0.5 0.5'/>
        <joint name='camera_tilt' type='hinge' axis='1 0 0' limited='true' range='-0.35 0.35'/>
        <camera name='egocentric' fovy='80'/>
      </body>
      <camera name='tracking' pos='1.5 1.5 .7' xyaxes='-1 1 0 -1 -1 4' mode='trackcom'/>
      <joint name='steer' type='hinge' axis='0 0 -1' class="root" damping="4"/>

      <geom type='box' group='5' name='top_down_cam_box' pos='0 0 2' size="1. 1. 0.1" rgba='.1 .1 .1 1' mass='0' contype="0" conaffinity="0"/>
      <geom type='box' name='head' pos='0 0 0' size="0.2 0.2 0.1" rgba='.1 .1 .1 1' mass='20' contype="1" conaffinity="1"/>
      <site name='torso_site' pos='0 0 0' size='0.05' rgba='1 0 0 1' group='4'/>

      <body pos='0 0 0.05' name='torso'>
        <!-- wheel -->
        <joint name='kick' type='slide' damping='100' limited='true' range='0 .4' axis="0 0 -1" stiffness="0" solimplimit=".95 .99 .001" springref="-.4"/>
        <geom name='arm_l' type='capsule' fromto='0  .35 -.7 .03  .8 -.7' size='.1' rgba='.76 .76 .76 1' density='10'/>
        <geom name='arm_r' type='capsule' fromto='0 -.35 -.7 .03 -.8 -.7' size='.1' rgba='.76 .76 .76 1' density='10'/>

        <body name='ball' pos='0 0 -0.7'>
          <joint name='roll' type='hinge' axis='0 1 0' damping='2'/>
          <geom name='shell' type='sphere' size='.35' density='100' condim='4' friction='.5 .02 .02'/>
        </body>

      </body>
    </body>
  </worldbody>

  <sensor>
    <velocimeter site="torso_site" name="sensor_torso_vel"/>
    <gyro site="torso_site" name="sensor_torso_gyro"/>
    <accelerometer site="torso_site" name="sensor_torso_accel"/>
  </sensor>

  <actuator>
    <general name='roll' joint='roll' ctrlrange='-1 1' ctrllimited='true' gear='-30' biasprm="0" biastype="affine"/>
    <motor name='steer' joint='steer' ctrlrange='-1 1' ctrllimited='true' gear='55'/>
    <general name='kick' joint='kick' ctrlrange='-1 1' ctrllimited='true' gear='1200' biasprm="0" biastype="affine"/>
    <velocity name='camera_height' joint='camera_height' ctrlrange='-1 1' ctrllimited='true'/>
    <velocity name='camera_tilt' joint='camera_tilt' ctrlrange='-1 1' ctrllimited='true'/>
  </actuator>
</mujoco>
