Mobility Machine Demo¶
This sample world is an arena including many simple, idiosyncratic mobility machines.
The world file is mobility.wbt, which can be found within the Webots.zip archive.
Screenshot of Webots model of various mobility robots. Each robot is independently driven by a Python script.¶
World File¶
The world file specifies all the elements of the scene: camera position, background scenery, lighting, fixed objects, and robots. The robots are modeled as separate .proto scripts so the world file is short and fairly readable, since only parameters changed from the defaults are specified.
1#VRML_SIM R2025a utf8
2
3EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2023b/projects/objects/floors/protos/RectangleArena.proto"
4EXTERNPROTO "../protos/ramp.proto"
5EXTERNPROTO "../protos/wobbly.proto"
6EXTERNPROTO "../protos/box-walker.proto"
7EXTERNPROTO "../protos/shuffler.proto"
8EXTERNPROTO "../protos/legwheel.proto"
9EXTERNPROTO "../protos/dekaleg.proto"
10EXTERNPROTO "../protos/bigpill.proto"
11EXTERNPROTO "../protos/legbox.proto"
12
13WorldInfo {
14}
15Viewpoint {
16 orientation -0.14085266490920947 0.25083644860876836 0.9577273113142982 1.0605964079811923
17 position -2.549991413606373 -3.061783946892743 1.3999802617650647
18 follow "DekaLeg1"
19 followType "None"
20}
21Background {
22 skyColor [
23 0.1 0.1 0.1
24 ]
25}
26DirectionalLight {
27 direction 0.4 -0.5 -1
28 intensity 3
29 castShadows TRUE
30}
31RectangleArena {
32 floorSize 6 6
33 floorTileSize 1 1
34 wallHeight 0.3
35}
36ramp {
37 translation 1 0 0
38 width 2
39}
40wobbly {
41 translation -1.45 0.5 0
42 controller "wobbly_thd"
43 name "Wobbly 1"
44}
45box-walker {
46 translation -2 0 0.07
47 name "Box-Walker 1"
48}
49shuffler {
50 translation -1.5 -0.63 0.075
51 name "Shuffler 1"
52}
53legwheel {
54 translation -1.14 -0.97 0.15
55 name "LegWheel 1"
56}
57dekaleg {
58 name "DekaLeg1"
59}
60bigpill {
61 translation -1.03 0.2 0.1
62 name "BigPill1"
63}
64legbox {
65 translation -0.86 0.96 0.25
66 name "Legbox 1"
67}