aboutsummaryrefslogtreecommitdiff
path: root/scenefiles/illuminate/optional
diff options
context:
space:
mode:
authorsotech117 <michael_foiani@brown.edu>2023-12-07 16:23:20 -0500
committersotech117 <michael_foiani@brown.edu>2023-12-07 16:23:20 -0500
commitcaa765bff49d54217b75aaf0e7acf4e5392a11e4 (patch)
tree9b92914dfb88b99599e8e60e4512e9e9ea9a25db /scenefiles/illuminate/optional
parenta9274459443f1d560d7580a162deb581549980cb (diff)
upload base code
Diffstat (limited to 'scenefiles/illuminate/optional')
-rw-r--r--scenefiles/illuminate/optional/fun/chess.json4407
-rw-r--r--scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_2.json139
-rw-r--r--scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_3.json206
-rw-r--r--scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_4.json270
-rw-r--r--scenefiles/illuminate/optional/reflection/test_reflectiveness.json77
-rw-r--r--scenefiles/illuminate/optional/texture_tests/directional_light_textured.json122
-rw-r--r--scenefiles/illuminate/optional/texture_tests/texture_cyl3.json67
-rw-r--r--scenefiles/illuminate/optional/textures/andyVanDam.jpgbin0 -> 25810 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/bark.pngbin0 -> 808741 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/board.pngbin0 -> 2026 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/breakfast.gifbin0 -> 78910 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/check.pngbin0 -> 1286916 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/cheese.pngbin0 -> 97649 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/earth.pngbin0 -> 2617047 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/liqmtl.pngbin0 -> 356094 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/mandril.pngbin0 -> 164047 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/marsTexture.pngbin0 -> 211510 bytes
-rw-r--r--scenefiles/illuminate/optional/textures/topleft.pngbin0 -> 46021 bytes
18 files changed, 5288 insertions, 0 deletions
diff --git a/scenefiles/illuminate/optional/fun/chess.json b/scenefiles/illuminate/optional/fun/chess.json
new file mode 100644
index 0000000..ae957d7
--- /dev/null
+++ b/scenefiles/illuminate/optional/fun/chess.json
@@ -0,0 +1,4407 @@
+{
+ "name": "root",
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.5,
+ "specularCoeff": 0.5,
+ "transparentCoeff": 0
+ },
+ "cameraData": {
+ "position": [12.0, 6.0, 6.0],
+ "up": [0.0, 1.0, 0.0],
+ "heightAngle": 60.0,
+ "focus": [4.0, 0.0, 3.0]
+ },
+ "groups": [
+ {
+ "translate": [8.5, 2.0, 8.5],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1.0, 1.0, 1.0],
+ "attenuationCoeff": [0.1, 1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "translate": [3.0, 3.0, 3.0],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1.0, 1.0, 1.0],
+ "attenuationCoeff": [0.1, 1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "translate": [-3.0, 4.0, -3.0],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1.0, 1.0, 1.0],
+ "attenuationCoeff": [0.1, 1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "translate": [-3.0, 2.0, 3.0],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1.0, 1.0, 1.0],
+ "attenuationCoeff": [0.1, 1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "translate": [8.0, 3.0, 1.0],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1.0, 1.0, 1.0],
+ "attenuationCoeff": [0.1, 1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "translate": [6.0, 2.0, 6.0],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1.0, 1.0, 1.0],
+ "attenuationCoeff": [0.1, 1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "groups": [
+ {
+ "groups": [
+ {
+ "translate": [4.0, 0.0, 4.0],
+ "scale": [8.0, 0.1, 8.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.05, 0.05, 0.05]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 0.01, 0.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [2.5, 0.01, 0.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0.01, 0.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [6.5, 0.01, 0.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [1.5, 0.01, 1.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [3.5, 0.01, 1.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [5.5, 0.01, 1.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [7.5, 0.01, 1.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 0.01, 2.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [2.5, 0.01, 2.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0.01, 2.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [6.5, 0.01, 2.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [1.5, 0.01, 3.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [3.5, 0.01, 3.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [5.5, 0.01, 3.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [7.5, 0.01, 3.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 0.01, 4.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [2.5, 0.01, 4.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0.01, 4.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [6.5, 0.01, 4.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [1.5, 0.01, 5.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [3.5, 0.01, 5.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [5.5, 0.01, 5.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [7.5, 0.01, 5.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 0.01, 6.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [2.5, 0.01, 6.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0.01, 6.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [6.5, 0.01, 6.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [1.5, 0.01, 7.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [3.5, 0.01, 7.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [5.5, 0.01, 7.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [7.5, 0.01, 7.5],
+ "scale": [1.0, 0.1, 1.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.9, -0.5],
+ "scale": [0.4, 0.5, 0.4],
+ "groups": [
+ {
+ "translate": [0.0, -1.6, 0.0],
+ "scale": [1.3, 0.1, 1.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.5, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [1.0, 0.8, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [0.3, 1.0, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.1, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.15, 0.0],
+ "scale": [0.4, 0.03, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.7, -0.7, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.6, 0.0],
+ "scale": [0.7, 0.2, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.3, 0.05, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.725, 0.0],
+ "scale": [0.15, 0.15, 0.15],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.9, -0.5],
+ "scale": [0.4, 0.5, 0.4],
+ "rotate": [0.0, 1.0, 0.0, 90.0],
+ "groups": [
+ {
+ "translate": [0.0, -1.6, 0.0],
+ "scale": [1.3, 0.1, 1.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.5, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [1.0, 0.8, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [0.3, 1.0, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.1, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.15, 0.0],
+ "scale": [0.4, 0.03, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.7, -0.7, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.6, 0.0],
+ "scale": [0.7, 0.2, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.3, 0.05, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.85, 0.0],
+ "scale": [0.1, 0.5, 0.05],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.95, 0.0],
+ "scale": [0.3, 0.1, 0.05],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.65, -0.5],
+ "scale": [0.3, 0.4, 0.3],
+ "groups": [
+ {
+ "translate": [0.0, -1.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.2, 0.0],
+ "scale": [1.0, 2.2, 1.0],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.1, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.65, -0.5],
+ "scale": [0.3, 0.4, 0.3],
+ "groups": [
+ {
+ "translate": [0.0, -1.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.2, 0.0],
+ "scale": [1.0, 2.2, 1.0],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.1, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.4, -0.5],
+ "scale": [0.4, 0.6, 0.4],
+ "rotate": [0.0, 1.0, 0.0, 180.0],
+ "groups": [
+ {
+ "scale": [1.0, 0.7, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.2, 0.3, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.6, 0.2, 1.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.7, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [1.0, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.9, 0.025],
+ "scale": [0.2, 0.2, 0.15],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, 0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, -0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.5, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.4, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.45, 0.0],
+ "scale": [1.2, 0.1, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.4, -0.5],
+ "scale": [0.4, 0.6, 0.4],
+ "rotate": [0.0, 1.0, 0.0, 180.0],
+ "groups": [
+ {
+ "scale": [1.0, 0.7, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.2, 0.3, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.6, 0.2, 1.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.7, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [1.0, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.9, 0.025],
+ "scale": [0.2, 0.2, 0.15],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, 0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, -0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.5, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.4, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.45, 0.0],
+ "scale": [1.2, 0.1, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.25, -0.5],
+ "scale": [0.4, 0.3, 0.4],
+ "groups": [
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.8, 0.15, 0.8],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.85, 1.8, 0.85],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.5, 0.0],
+ "scale": [0.5, 2.0, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.5, 0.5, 0.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.4, 0.0],
+ "scale": [0.7, 0.15, 0.7],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.6, 0.15, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.9, 0.0],
+ "scale": [0.7, 0.7, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.3, 0.0],
+ "scale": [0.7, 0.6, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.25, -0.5],
+ "scale": [0.4, 0.3, 0.4],
+ "groups": [
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.8, 0.15, 0.8],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.85, 1.8, 0.85],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.5, 0.0],
+ "scale": [0.5, 2.0, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.5, 0.5, 0.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.4, 0.0],
+ "scale": [0.7, 0.15, 0.7],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.6, 0.15, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.9, 0.0],
+ "scale": [0.7, 0.7, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.3, 0.0],
+ "scale": [0.7, 0.6, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [1.0, 1.0, 1.0]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.9, -0.5],
+ "scale": [0.4, 0.5, 0.4],
+ "groups": [
+ {
+ "translate": [0.0, -1.6, 0.0],
+ "scale": [1.3, 0.1, 1.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.5, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [1.0, 0.8, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [0.3, 1.0, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.1, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.15, 0.0],
+ "scale": [0.4, 0.03, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.7, -0.7, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.6, 0.0],
+ "scale": [0.7, 0.2, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.3, 0.05, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.725, 0.0],
+ "scale": [0.15, 0.15, 0.15],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.9, -0.5],
+ "scale": [0.4, 0.5, 0.4],
+ "rotate": [0.0, 1.0, 0.0, 90.0],
+ "groups": [
+ {
+ "translate": [0.0, -1.6, 0.0],
+ "scale": [1.3, 0.1, 1.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.5, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [1.0, 0.8, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.0, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [0.3, 1.0, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.1, 0.0],
+ "scale": [0.6, 0.05, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.15, 0.0],
+ "scale": [0.4, 0.03, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.7, -0.7, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.6, 0.0],
+ "scale": [0.7, 0.2, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.3, 0.05, 0.3],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.85, 0.0],
+ "scale": [0.1, 0.5, 0.05],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.95, 0.0],
+ "scale": [0.3, 0.1, 0.05],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.65, -0.5],
+ "scale": [0.3, 0.4, 0.3],
+ "groups": [
+ {
+ "translate": [0.0, -1.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.2, 0.0],
+ "scale": [1.0, 2.2, 1.0],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.1, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.65, -0.5],
+ "scale": [0.3, 0.4, 0.3],
+ "groups": [
+ {
+ "translate": [0.0, -1.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -1.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.2, 0.0],
+ "scale": [1.0, 2.2, 1.0],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.1, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.25, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, 0.0],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.25],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 1.2, -0.5],
+ "scale": [0.1, 0.1, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.4, -0.5],
+ "scale": [0.4, 0.6, 0.4],
+ "groups": [
+ {
+ "scale": [1.0, 0.7, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.2, 0.3, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.6, 0.2, 1.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.7, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [1.0, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.9, 0.025],
+ "scale": [0.2, 0.2, 0.15],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, 0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, -0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.5, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.4, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.45, 0.0],
+ "scale": [1.2, 0.1, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.4, -0.5],
+ "scale": [0.4, 0.6, 0.4],
+ "groups": [
+ {
+ "scale": [1.0, 0.7, 1.0],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.2, 0.3, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.6, 0.2, 1.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.7, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [1.0, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, 0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.05, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -20.0],
+ "scale": [0.15, 0.2, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.15, 1.05, -0.05],
+ "rotate": [0.0, 0.0, 1.0, -45.0],
+ "scale": [0.35, 0.15, 0.1],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.9, 0.025],
+ "scale": [0.2, 0.2, 0.15],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, 0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.3, 0.72, -0.03],
+ "rotate": [0.0, 0.0, 1.0, 35.0],
+ "scale": [0.6, 0.25, 0.12],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.1, 0.5, 0.0],
+ "rotate": [1.0, 0.0, 0.0, 90.0],
+ "scale": [0.4, 0.2, 0.4],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.1, 0.1, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.45, 0.0],
+ "scale": [1.2, 0.1, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.25, -0.5],
+ "scale": [0.4, 0.3, 0.4],
+ "groups": [
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.8, 0.15, 0.8],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.85, 1.8, 0.85],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.5, 0.0],
+ "scale": [0.5, 2.0, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.5, 0.5, 0.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.4, 0.0],
+ "scale": [0.7, 0.15, 0.7],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.6, 0.15, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.9, 0.0],
+ "scale": [0.7, 0.7, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.3, 0.0],
+ "scale": [0.7, 0.6, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.25, -0.5],
+ "scale": [0.4, 0.3, 0.4],
+ "groups": [
+ {
+ "translate": [0.0, -0.4, 0.0],
+ "scale": [1.2, 0.2, 1.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [1.1, 0.2, 1.1],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.8, 0.15, 0.8],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.7, 0.0],
+ "scale": [0.85, 1.8, 0.85],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.5, 0.0],
+ "scale": [0.5, 2.0, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.5, 0.5, 0.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.4, 0.0],
+ "scale": [0.7, 0.15, 0.7],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.5, 0.0],
+ "scale": [0.6, 0.15, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 1.9, 0.0],
+ "scale": [0.7, 0.7, 0.7],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.3, 0.0],
+ "scale": [0.7, 0.6, 0.7],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 2.6, 0.0],
+ "scale": [0.2, 0.2, 0.2],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "translate": [-0.5, 0.35, -0.5],
+ "scale": [0.7, 0.7, 0.7],
+ "groups": [
+ {
+ "translate": [0.0, -0.25, 0.0],
+ "scale": [0.5, 0.07, 0.5],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.3, 0.0],
+ "scale": [0.6, 0.1, 0.6],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "scale": [0.4, 0.4, 0.4],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.2, 0.0],
+ "scale": [0.2, 0.6, 0.2],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.25, 0.0],
+ "scale": [0.25, 0.03, 0.25],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.45, 0.0],
+ "scale": [0.35, -0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.55, 0.0],
+ "scale": [0.35, 0.1, 0.35],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ },
+ {
+ "translate": [0.0, 0.65, 0.0],
+ "scale": [0.35, 0.35, 0.35],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.1, 0.1, 0.1]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_2.json b/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_2.json
new file mode 100644
index 0000000..08f9557
--- /dev/null
+++ b/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_2.json
@@ -0,0 +1,139 @@
+{
+ "name": "root",
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.7,
+ "specularCoeff": 0.54,
+ "transparentCoeff": 0
+ },
+ "cameraData": {
+ "position": [10, 4.1, 16],
+ "up": [0, 1, 0],
+ "heightAngle": 49.5,
+ "look": [-9, -3.2, -16]
+ },
+ "templateGroups": [
+ {
+ "name": "level 1",
+ "groups": [
+ {
+ "translate": [0, 0, 0],
+ "scale": [3, 3, 3],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [0.75, 1, 0.75],
+ "diffuse": [0.75, 1, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "groups": [
+ {
+ "name": "Directional Lights",
+ "lights": [
+ {
+ "type": "directional",
+ "color": [1, 1, 1],
+ "direction": [0.25, 1, -1]
+ },
+ {
+ "type": "directional",
+ "color": [1, 1, 1],
+ "direction": [1, -1.8, -2]
+ }
+ ]
+ },
+ {
+ "name": "Point Light",
+ "translate": [10, 10, 10],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1, 1, 1],
+ "attenuationCoeff": [1.5, 0, 0]
+ }
+ ]
+ },
+ {
+ "name": "level 0",
+ "translate": [0, 0, 0],
+ "scale": [6, 6, 6],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [1, 0.75, 0.75],
+ "diffuse": [1, 0.75, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+ {
+ "translate": [-4.5, 0, 0],
+ "rotate": [0, 0, 1, 90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0, 0],
+ "rotate": [0, 0, 1, -90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 4.5, 0],
+ "rotate": [1, 0, 0, 0],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, -4.5, 0],
+ "rotate": [0, 0, 1, 180],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, -4.5],
+ "rotate": [1, 0, 0, -90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, 4.5],
+ "rotate": [1, 0, 0, 90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_3.json b/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_3.json
new file mode 100644
index 0000000..95cb825
--- /dev/null
+++ b/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_3.json
@@ -0,0 +1,206 @@
+{
+ "name": "root",
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.7,
+ "specularCoeff": 0.54,
+ "transparentCoeff": 0
+ },
+ "cameraData": {
+ "position": [10, 4.1, 16],
+ "up": [0, 1, 0],
+ "heightAngle": 49.5,
+ "look": [-9, -3.2, -16]
+ },
+ "templateGroups": [
+ {
+ "name": "level 2",
+ "groups": [
+ {
+ "translate": [0, 0, 0],
+ "scale": [1.5, 1.5, 1.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [0.75, 0.75, 1],
+ "diffuse": [0.75, 0.75, 1],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name": "level 1",
+ "groups": [
+ {
+ "translate": [0, 0, 0],
+ "scale": [3, 3, 3],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [0.75, 1, 0.75],
+ "diffuse": [0.75, 1, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+ {
+ "translate": [-2.25, 0, 0],
+ "rotate": [0, 0, 1, 90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [2.25, 0, 0],
+ "rotate": [0, 0, 1, -90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [0, 2.25, 0],
+ "rotate": [1, 0, 0, 0],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, -2.25],
+ "rotate": [1, 0, 0, -90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, 2.25],
+ "rotate": [1, 0, 0, 90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "groups": [
+ {
+ "name": "Directional Lights",
+ "lights": [
+ {
+ "type": "directional",
+ "color": [1, 1, 1],
+ "direction": [0.25, 1, -1]
+ },
+ {
+ "type": "directional",
+ "color": [1, 1, 1],
+ "direction": [1, -1.8, -2]
+ }
+ ]
+ },
+ {
+ "name": "Point Light",
+ "translate": [10, 10, 10],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1, 1, 1],
+ "attenuationCoeff": [1.5, 0, 0]
+ }
+ ]
+ },
+ {
+ "name": "level 0",
+ "translate": [0, 0, 0],
+ "scale": [6, 6, 6],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [1, 0.75, 0.75],
+ "diffuse": [1, 0.75, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+ {
+ "translate": [-4.5, 0, 0],
+ "rotate": [0, 0, 1, 90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0, 0],
+ "rotate": [0, 0, 1, -90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 4.5, 0],
+ "rotate": [1, 0, 0, 0],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, -4.5, 0],
+ "rotate": [0, 0, 1, 180],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, -4.5],
+ "rotate": [1, 0, 0, -90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, 4.5],
+ "rotate": [1, 0, 0, 90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_4.json b/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_4.json
new file mode 100644
index 0000000..782af5e
--- /dev/null
+++ b/scenefiles/illuminate/optional/recursive_spheres/recursive_sphere_4.json
@@ -0,0 +1,270 @@
+{
+ "name": "root",
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.7,
+ "specularCoeff": 0.54,
+ "transparentCoeff": 0
+ },
+ "cameraData": {
+ "position": [10, 4.1, 16],
+ "up": [0, 1, 0],
+ "heightAngle": 49.5,
+ "look": [-9, -3.2, -16]
+ },
+ "templateGroups": [
+ {
+ "name": "level 3",
+ "translate": [0, 0, 0],
+ "scale": [0.75, 0.75, 0.75],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [1, 0.75, 0.75],
+ "diffuse": [1, 0.75, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+
+ {
+ "name": "level 2",
+ "groups": [
+ {
+ "translate": [0, 0, 0],
+ "scale": [1.5, 1.5, 1.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [0.75, 0.75, 1],
+ "diffuse": [0.75, 0.75, 1],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+ {
+ "translate": [-1.125, 0, 0],
+ "rotate": [0, 0, 1, 90],
+ "groups": [
+ {
+ "name": "level 3"
+ }
+ ]
+ },
+ {
+ "translate": [1.125, 0, 0],
+ "rotate": [0, 0, 1, -90],
+ "groups": [
+ {
+ "name": "level 3"
+ }
+ ]
+ },
+ {
+ "translate": [0, 1.125, 0],
+ "rotate": [1, 0, 0, 0],
+ "groups": [
+ {
+ "name": "level 3"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, -1.125],
+ "rotate": [1, 0, 0, -90],
+ "groups": [
+ {
+ "name": "level 3"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, 1.125],
+ "rotate": [1, 0, 0, 90],
+ "groups": [
+ {
+ "name": "level 3"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "name": "level 1",
+ "groups": [
+ {
+ "translate": [0, 0, 0],
+ "scale": [3, 3, 3],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [0.75, 1, 0.75],
+ "diffuse": [0.75, 1, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+ {
+ "translate": [-2.25, 0, 0],
+ "rotate": [0, 0, 1, 90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [2.25, 0, 0],
+ "rotate": [0, 0, 1, -90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [0, 2.25, 0],
+ "rotate": [1, 0, 0, 0],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, -2.25],
+ "rotate": [1, 0, 0, -90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, 2.25],
+ "rotate": [1, 0, 0, 90],
+ "groups": [
+ {
+ "name": "level 2"
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "groups": [
+ {
+ "name": "Directional Lights",
+ "lights": [
+ {
+ "type": "directional",
+ "color": [1, 1, 1],
+ "direction": [0.25, 1, -1]
+ },
+ {
+ "type": "directional",
+ "color": [1, 1, 1],
+ "direction": [1, -1.8, -2]
+ }
+ ]
+ },
+ {
+ "name": "Point Light",
+ "translate": [10, 10, 10],
+ "lights": [
+ {
+ "type": "point",
+ "color": [1, 1, 1],
+ "attenuationCoeff": [1.5, 0, 0]
+ }
+ ]
+ },
+ {
+ "name": "level 0",
+ "translate": [0, 0, 0],
+ "scale": [6, 6, 6],
+ "primitives": [
+ {
+ "type": "sphere",
+ "reflective": [1, 0.75, 0.75],
+ "diffuse": [1, 0.75, 0.75],
+ "shininess": 25,
+ "specular": [1, 1, 1],
+ "textureFile": "file:src/../../../image_source/marsTexture.png",
+ "textureU": 1,
+ "textureV": 1,
+ "blend": 0.75
+ }
+ ]
+ },
+ {
+ "translate": [-4.5, 0, 0],
+ "rotate": [0, 0, 1, 90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [4.5, 0, 0],
+ "rotate": [0, 0, 1, -90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 4.5, 0],
+ "rotate": [1, 0, 0, 0],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, -4.5, 0],
+ "rotate": [0, 0, 1, 180],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, -4.5],
+ "rotate": [1, 0, 0, -90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ },
+ {
+ "translate": [0, 0, 4.5],
+ "rotate": [1, 0, 0, 90],
+ "groups": [
+ {
+ "name": "level 1"
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/reflection/test_reflectiveness.json b/scenefiles/illuminate/optional/reflection/test_reflectiveness.json
new file mode 100644
index 0000000..358d50a
--- /dev/null
+++ b/scenefiles/illuminate/optional/reflection/test_reflectiveness.json
@@ -0,0 +1,77 @@
+{
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.5,
+ "specularCoeff": 0.5,
+ "transparentCoeff": 1
+ },
+ "cameraData": {
+ "position": [5, 1, 5],
+ "up": [0, 1, 0],
+ "heightAngle": 30,
+ "look": [-1, 0, -1]
+ },
+ "groups": [
+ {
+ "name": "Lights",
+ "lights": [
+ {
+ "color": [1, 0, 0],
+ "type": "directional",
+ "direction": [0, -0.2, -1]
+ },
+ {
+ "color": [0, 1, 0],
+ "type": "directional",
+ "direction": [0, -0.2, 1]
+ },
+ {
+ "color": [0, 0, 1],
+ "type": "directional",
+ "direction": [-1, -0.2, 0]
+ },
+ {
+ "color": [0, 0, 1],
+ "type": "directional",
+ "direction": [1, -0.2, 0]
+ }
+ ]
+ },
+ {
+ "name": "Mirror",
+ "scale": [0.1, 3, 4],
+ "primitives": [
+ {
+ "type": "cube",
+ "reflective": [0.2, 0.2, 0.2],
+ "ambient": [0.68, 0.85, 0.9],
+ "diffuse": [0.8, 0.8, 0.8]
+ }
+ ]
+ },
+ {
+ "name": "Sphere",
+ "translate": [1.5, 0, -1.5],
+ "primitives": [
+ {
+ "type": "sphere",
+ "ambient": [1, 0, 0],
+ "diffuse": [0, 0, 0],
+ "shininess": 30,
+ "specular": [1, 1, 1]
+ }
+ ]
+ },
+ {
+ "name": "Table",
+ "translate": [0, -0.75, 0],
+ "scale": [10, 0.5, 10],
+ "primitives": [
+ {
+ "type": "cube",
+ "ambient": [0, 0.2, 0.13]
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/texture_tests/directional_light_textured.json b/scenefiles/illuminate/optional/texture_tests/directional_light_textured.json
new file mode 100644
index 0000000..385dece
--- /dev/null
+++ b/scenefiles/illuminate/optional/texture_tests/directional_light_textured.json
@@ -0,0 +1,122 @@
+{
+ "name": "root",
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.5,
+ "specularCoeff": 0.5,
+ "transparentCoeff": 0
+ },
+ "cameraData": {
+ "position": [-6.0, 4.0, 4.0],
+ "up": [0.0, 1.0, 0.0],
+ "focus": [0, 0, 0],
+ "heightAngle": 30.0
+ },
+ "groups": [
+ {
+ "lights": [
+ {
+ "type": "directional",
+ "color": [0.5, 0.5, 0.5],
+ "direction": [0.0, -1.0, 0.0]
+ }
+ ]
+ },
+ {
+ "lights": [
+ {
+ "type": "directional",
+ "color": [0.5, 0.5, 0.5],
+ "direction": [0.0, -1.0, -1.0]
+ }
+ ]
+ },
+ {
+ "lights": [
+ {
+ "type": "directional",
+ "color": [0.5, 0.5, 0.5],
+ "direction": [0.0, -1.0, 1.0]
+ }
+ ]
+ },
+ {
+ "groups": [
+ {
+ "translate": [-0.65, 0.0, 0.65],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [0.8, 0.6, 0.6],
+ "specular": [1.0, 1.0, 1.0],
+ "shininess": 15.0,
+ "blend": 1.0,
+ "textureFile": "textures/breakfast.gif",
+ "textureU": 2.0,
+ "textureV": 2.0
+ }
+ ]
+ },
+ {
+ "translate": [-0.65, 0.0, -0.65],
+ "primitives": [
+ {
+ "type": "cone",
+ "diffuse": [0.6, 0.6, 0.8],
+ "specular": [1.0, 1.0, 1.0],
+ "shininess": 15.0,
+ "blend": 1.0,
+ "textureFile": "textures/mandril.png",
+ "textureU": 2.0,
+ "textureV": 2.0
+ }
+ ]
+ },
+ {
+ "translate": [0.65, 0.0, -0.65],
+ "primitives": [
+ {
+ "type": "sphere",
+ "diffuse": [0.6, 0.8, 0.6],
+ "specular": [1.0, 1.0, 1.0],
+ "shininess": 15.0,
+ "blend": 1.0,
+ "textureFile": "textures/earth.png",
+ "textureU": 2.0,
+ "textureV": 2.0
+ }
+ ]
+ },
+ {
+ "translate": [0.65, 0.0, 0.65],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.7, 0.7, 0.7],
+ "specular": [1.0, 1.0, 1.0],
+ "shininess": 15.0,
+ "blend": 1.0,
+ "textureFile": "textures/cheese.png",
+ "textureU": 2.0,
+ "textureV": 2.0
+ }
+ ]
+ },
+ {
+ "translate": [0.0, -0.6, 0.0],
+ "scale": [6.0, 0.1, 6.0],
+ "primitives": [
+ {
+ "type": "cube",
+ "diffuse": [0.1, 0.4, 0.8],
+ "blend": 1.0,
+ "textureFile": "textures/bark.png",
+ "textureU": 2.0,
+ "textureV": 2.0
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/texture_tests/texture_cyl3.json b/scenefiles/illuminate/optional/texture_tests/texture_cyl3.json
new file mode 100644
index 0000000..9361f37
--- /dev/null
+++ b/scenefiles/illuminate/optional/texture_tests/texture_cyl3.json
@@ -0,0 +1,67 @@
+{
+ "name": "root",
+ "globalData": {
+ "ambientCoeff": 0.5,
+ "diffuseCoeff": 0.5,
+ "specularCoeff": 0.5,
+ "transparentCoeff": 1
+ },
+ "cameraData": {
+ "position": [-4.0, 3.0, 3.0],
+ "up": [0.0, 1.0, 0.0],
+ "look": [4.0, -3.0, -3.0],
+ "heightAngle": 30.0
+ },
+ "groups": [
+ {
+ "lights": [
+ {
+ "type": "point",
+ "color": [0.5, 0.5, 0.5],
+ "attenuationCoeff": [1, 0, 0]
+ }
+ ],
+ "translate": [10, 10, 10]
+ },
+ {
+ "lights": [
+ {
+ "type": "point",
+ "color": [0.8, 0.4, 0.8],
+ "attenuationCoeff": [1, 0, 0]
+ }
+ ],
+ "translate": [-2, -2, 2]
+ },
+ {
+ "lights": [
+ {
+ "type": "point",
+ "color": [0.8, 0.4, 0.8],
+ "attenuationCoeff": [1, 0, 0]
+ }
+ ],
+ "translate": [4, 4, 4]
+ },
+ {
+ "groups": [
+ {
+ "translate": [0.0, 0.0, 0.0],
+ "primitives": [
+ {
+ "type": "cylinder",
+ "diffuse": [1.0, 1.0, 1.0],
+ "specular": [1.0, 1.0, 1.0],
+ "shininess": 30.0,
+ "reflective": [1.0, 1.0, 1.0],
+ "blend": 1.0,
+ "textureFile": "textures/mandril.png",
+ "textureU": 2.0,
+ "textureV": 2.0
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/scenefiles/illuminate/optional/textures/andyVanDam.jpg b/scenefiles/illuminate/optional/textures/andyVanDam.jpg
new file mode 100644
index 0000000..4bb0ebd
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/andyVanDam.jpg
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/bark.png b/scenefiles/illuminate/optional/textures/bark.png
new file mode 100644
index 0000000..d771e0f
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/bark.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/board.png b/scenefiles/illuminate/optional/textures/board.png
new file mode 100644
index 0000000..27278dc
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/board.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/breakfast.gif b/scenefiles/illuminate/optional/textures/breakfast.gif
new file mode 100644
index 0000000..880724d
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/breakfast.gif
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/check.png b/scenefiles/illuminate/optional/textures/check.png
new file mode 100644
index 0000000..96b2d3a
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/check.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/cheese.png b/scenefiles/illuminate/optional/textures/cheese.png
new file mode 100644
index 0000000..84d78f5
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/cheese.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/earth.png b/scenefiles/illuminate/optional/textures/earth.png
new file mode 100644
index 0000000..3300378
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/earth.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/liqmtl.png b/scenefiles/illuminate/optional/textures/liqmtl.png
new file mode 100644
index 0000000..ea27109
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/liqmtl.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/mandril.png b/scenefiles/illuminate/optional/textures/mandril.png
new file mode 100644
index 0000000..3fbe573
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/mandril.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/marsTexture.png b/scenefiles/illuminate/optional/textures/marsTexture.png
new file mode 100644
index 0000000..35f842a
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/marsTexture.png
Binary files differ
diff --git a/scenefiles/illuminate/optional/textures/topleft.png b/scenefiles/illuminate/optional/textures/topleft.png
new file mode 100644
index 0000000..6e46914
--- /dev/null
+++ b/scenefiles/illuminate/optional/textures/topleft.png
Binary files differ