ffeng1017's picture
WAV interactive demo (ZeroGPU)
23a59ea verified
Raw
History Blame Contribute Delete
3.69 kB
<mujoco model="spinner">
<include file="./common/skybox.xml"/>
<include file="./common/visual.xml"/>
<include file="./common/materials.xml"/>
<compiler settotalmass="2"/>
<default>
<default class="spinner">
<joint limited="true" damping=".01" armature=".1" stiffness="8" type="hinge" axis="0 1 0"/>
<geom contype="1" conaffinity="1" condim="3" friction=".15 .1 .1" material="self"/>
</default>
<default class="free">
<joint limited="false" damping="0" armature="0" stiffness="0"/>
</default>
<motor ctrllimited="true" ctrlrange="-1 1"/>
</default>
<statistic center="0 0 .7" extent="2"/>
<option timestep="0.01"/>
<worldbody>
<geom name="ground" type="plane" conaffinity="1" pos="98 0 0" size="200 .8 .5" material="grid"/>
<body name="torso" pos="0 0 .9" childclass="spinner">
<light name="light" pos="0 0 2" mode="trackcom"/>
<camera name="side" pos="0 -3 0" quat="0.707 0.707 0 0" mode="trackcom"/>
<camera name="back" pos="-1.8 -1.3 0.8" xyaxes="0.45 -0.9 0 0.3 0.15 0.94" mode="trackcom"/>
<joint name="rootx" type="slide" axis="1 0 0" class="free"/>
<joint name="rootz" type="slide" axis="0 0 1" class="free"/>
<joint name="rooty" type="hinge" axis="0 1 0" class="free"/>
<geom name="torso" type="sphere" pos="0 0 0" size="0.22"/>
<!-- Spinner limbs placed evenly at 72-degree intervals -->
<!-- Two small inanimate eyes -->
<geom name="eye_left" type="sphere" pos="-0.06 -0.16 0.12" size="0.037" material="eye"/>
<geom name="eye_right" type="sphere" pos="0.06 -0.16 0.12" size="0.037" material="eye"/>
<!-- Limb 0: 0° -->
<body name="limb_0" pos="0 0 0" euler="0 0 0">
<joint name="limb_0" type="hinge" axis="0 1 0" range="-35 35" stiffness="220" damping="5"/>
<geom type="capsule" fromto="0 0 0 0 0 0.566" size="0.052"/>
<geom type="sphere" pos="0 0 0.566" size="0.078"/>
</body>
<!-- Limb 1: 72° -->
<body name="limb_1" pos="0 0 0" euler="0 72 0">
<joint name="limb_1" type="hinge" axis="0 1 0" range="-35 35" stiffness="220" damping="5"/>
<geom type="capsule" fromto="0 0 0 0 0 0.566" size="0.052"/>
<geom type="sphere" pos="0 0 0.566" size="0.078"/>
</body>
<!-- Limb 2: 144° -->
<body name="limb_2" pos="0 0 0" euler="0 144 0">
<joint name="limb_2" type="hinge" axis="0 1 0" range="-35 35" stiffness="220" damping="5"/>
<geom type="capsule" fromto="0 0 0 0 0 0.566" size="0.052"/>
<geom type="sphere" pos="0 0 0.566" size="0.078"/>
</body>
<!-- Limb 3: 216° -->
<body name="limb_3" pos="0 0 0" euler="0 216 0">
<joint name="limb_3" type="hinge" axis="0 1 0" range="-35 35" stiffness="220" damping="5"/>
<geom type="capsule" fromto="0 0 0 0 0 0.566" size="0.052"/>
<geom type="sphere" pos="0 0 0.566" size="0.078"/>
</body>
<!-- Limb 4: 288° -->
<body name="limb_4" pos="0 0 0" euler="0 288 0">
<joint name="limb_4" type="hinge" axis="0 1 0" range="-35 35" stiffness="220" damping="5"/>
<geom type="capsule" fromto="0 0 0 0 0 0.566" size="0.052"/>
<geom type="sphere" pos="0 0 0.566" size="0.078"/>
</body>
</body>
</worldbody>
<sensor>
<subtreelinvel name="torso_subtreelinvel" body="torso"/>
</sensor>
<actuator>
<motor name="limb_0" joint="limb_0" gear="100" />
<motor name="limb_1" joint="limb_1" gear="100" />
<motor name="limb_2" joint="limb_2" gear="100" />
<motor name="limb_3" joint="limb_3" gear="100" />
<motor name="limb_4" joint="limb_4" gear="100" />
</actuator>
</mujoco>