diff --git a/assets/img/atlas-guide.png b/assets/img/atlas-guide.png
index 1536af7..b327d12 100644
Binary files a/assets/img/atlas-guide.png and b/assets/img/atlas-guide.png differ
diff --git a/assets/img/atlas.png b/assets/img/atlas.png
index a6eb0ee..d14c90a 100644
Binary files a/assets/img/atlas.png and b/assets/img/atlas.png differ
diff --git a/assets/models/leftlaser.obj b/assets/models/leftlaser.obj
new file mode 100644
index 0000000..aa5e7fa
--- /dev/null
+++ b/assets/models/leftlaser.obj
@@ -0,0 +1,35 @@
+# Blender v2.79 (sub 0) OBJ File: 'stage.blend'
+# www.blender.org
+v -0.056853 -136.244156 0.100000
+v -0.056853 136.244156 0.100000
+v -0.082947 -136.244141 -0.100000
+v -0.082947 136.244141 -0.100000
+v 0.056853 -136.244156 0.100000
+v 0.056853 136.244156 0.100000
+v 0.082947 -136.244141 -0.100000
+v 0.082947 136.244141 -0.100000
+v -4.780099 -165.906036 -0.242529
+v -4.780099 165.906036 -0.242529
+v 4.780099 -165.906036 -0.242529
+v 4.780099 165.906036 -0.242529
+vt 0.760463 0.015416
+vt 0.760176 0.006970
+vt 0.760176 0.015416
+vt 0.624640 0.498774
+vt 0.501254 0.001458
+vt 0.624640 0.001458
+vt 0.762000 0.006970
+vt 0.761713 0.015416
+vt 0.762000 0.015416
+vt 0.761713 0.006970
+vt 0.760463 0.006970
+vt 0.501254 0.498774
+s off
+f 1/1 4/2 3/3
+f 12/4 9/5 11/6
+f 8/7 5/8 7/9
+f 6/10 1/1 5/8
+f 1/1 2/11 4/2
+f 12/4 10/12 9/5
+f 8/7 6/10 5/8
+f 6/10 2/11 1/1
diff --git a/assets/models/rightlaser.obj b/assets/models/rightlaser.obj
new file mode 100644
index 0000000..4fea789
--- /dev/null
+++ b/assets/models/rightlaser.obj
@@ -0,0 +1,35 @@
+# Blender v2.79 (sub 0) OBJ File: 'stage.blend'
+# www.blender.org
+v -0.056853 -150.000031 0.100000
+v -0.056853 150.000031 0.100000
+v -0.082947 -150.000015 -0.100000
+v -0.082947 150.000015 -0.100000
+v 0.056853 -150.000031 0.100000
+v 0.056853 150.000031 0.100000
+v 0.082947 -150.000015 -0.100000
+v 0.082947 150.000015 -0.100000
+v -4.780099 -165.906036 -0.242529
+v -4.780099 165.906036 -0.242529
+v 4.780099 -165.906036 -0.242529
+v 4.780099 165.906036 -0.242529
+vt 0.760463 0.006970
+vt 0.760176 0.015416
+vt 0.760463 0.015416
+vt 0.749735 0.498774
+vt 0.626349 0.001458
+vt 0.749735 0.001458
+vt 0.762000 0.006970
+vt 0.761713 0.015416
+vt 0.762000 0.015416
+vt 0.761713 0.006970
+vt 0.760176 0.006970
+vt 0.626349 0.498774
+s off
+f 2/1 3/2 1/3
+f 12/4 9/5 11/6
+f 8/7 5/8 7/9
+f 6/10 1/3 5/8
+f 2/1 4/11 3/2
+f 12/4 10/12 9/5
+f 8/7 6/10 5/8
+f 6/10 2/1 1/3
diff --git a/assets/models/stageadditive.obj b/assets/models/stageadditive.obj
index 745a552..342d810 100644
--- a/assets/models/stageadditive.obj
+++ b/assets/models/stageadditive.obj
@@ -21,27 +21,27 @@ f 1/1 4/2 2/3
f 5/4 8/5 7/6
f 1/1 3/7 4/2
f 5/4 6/8 8/5
-v 12.863472 5.606542 -33.581116
-v 5.505581 12.964426 -33.581116
-v 14.446635 7.189702 -33.454609
-v 7.088743 14.547589 -33.454609
-v -12.863472 5.606542 -33.581116
-v -5.505581 12.964426 -33.581116
-v -14.446635 7.189702 -33.454609
-v -7.088743 14.547589 -33.454609
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.888596 0.500182
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.900723 0.749152
+v 13.064644 5.472427 -33.581116
+v 5.058533 13.523236 -33.581116
+v 14.647807 7.055587 -33.454609
+v 6.641695 15.106400 -33.454609
+v -13.064644 5.472427 -33.581116
+v -5.058533 13.523236 -33.581116
+v -14.647807 7.055587 -33.454609
+v -6.641695 15.106400 -33.454609
vt 0.900723 0.749152
vt 0.888596 0.500182
+vt 0.888596 0.749152
+vt 0.888596 0.500182
+vt 0.900723 0.749152
+vt 0.888596 0.749152
+vt 0.900723 0.500182
+vt 0.900723 0.500182
s off
-f 9/9 12/10 10/11
-f 13/12 16/13 15/14
-f 9/9 11/15 12/10
-f 13/12 14/16 16/13
+f 11/9 10/10 9/11
+f 14/12 15/13 13/14
+f 11/9 12/15 10/10
+f 14/12 16/16 15/13
v 15.178578 1.075909 -27.463730
v 1.075902 15.178576 -27.463730
v 19.149137 5.046469 -27.146448
@@ -63,27 +63,27 @@ f 17/17 20/18 18/19
f 21/20 24/21 23/22
f 17/17 19/23 20/18
f 21/20 22/24 24/21
-v 12.863472 5.606542 -27.129221
-v 5.505581 12.964426 -27.129221
-v 14.446635 7.189702 -27.002712
-v 7.088743 14.547589 -27.002712
-v -12.863472 5.606542 -27.129221
-v -5.505581 12.964426 -27.129221
-v -14.446635 7.189702 -27.002712
-v -7.088743 14.547589 -27.002712
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.888596 0.500182
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.900723 0.749152
+v 13.042291 5.472427 -27.129221
+v 5.058533 13.567941 -27.129221
+v 14.625454 7.055587 -27.002712
+v 6.641695 15.151104 -27.002712
+v -13.042291 5.472427 -27.129221
+v -5.058533 13.567941 -27.129221
+v -14.625454 7.055587 -27.002712
+v -6.641695 15.151104 -27.002712
vt 0.900723 0.749152
vt 0.888596 0.500182
+vt 0.888596 0.749152
+vt 0.888596 0.500182
+vt 0.900723 0.749152
+vt 0.888596 0.749152
+vt 0.900723 0.500182
+vt 0.900723 0.500182
s off
-f 25/25 28/26 26/27
-f 29/28 32/29 31/30
-f 25/25 27/31 28/26
-f 29/28 30/32 32/29
+f 27/25 26/26 25/27
+f 30/28 31/29 29/30
+f 27/25 28/31 26/26
+f 30/28 32/32 31/29
v 15.178578 1.075909 -21.022888
v 1.075902 15.178576 -21.022886
v 19.149137 5.046469 -20.705606
@@ -105,27 +105,27 @@ f 33/33 36/34 34/35
f 37/36 40/37 39/38
f 33/33 35/39 36/34
f 37/36 38/40 40/37
-v 12.863472 5.606542 -20.677326
-v 5.505581 12.964426 -20.677326
-v 14.446635 7.189702 -20.550817
-v 7.088743 14.547589 -20.550817
-v -12.863472 5.606542 -20.677326
-v -5.505581 12.964426 -20.677326
-v -14.446635 7.189702 -20.550817
-v -7.088743 14.547589 -20.550817
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.888596 0.500182
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.900723 0.749152
+v 13.064644 5.472427 -20.677326
+v 5.036180 13.523236 -20.677326
+v 14.647807 7.055587 -20.550817
+v 6.619342 15.106400 -20.550817
+v -13.064644 5.472427 -20.677326
+v -5.036180 13.523236 -20.677326
+v -14.647807 7.055587 -20.550817
+v -6.619342 15.106400 -20.550817
vt 0.900723 0.749152
vt 0.888596 0.500182
+vt 0.888596 0.749152
+vt 0.888596 0.500182
+vt 0.900723 0.749152
+vt 0.888596 0.749152
+vt 0.900723 0.500182
+vt 0.900723 0.500182
s off
-f 41/41 44/42 42/43
-f 45/44 48/45 47/46
-f 41/41 43/47 44/42
-f 45/44 46/48 48/45
+f 43/41 42/42 41/43
+f 46/44 47/45 45/46
+f 43/41 44/47 42/42
+f 46/44 48/48 47/45
v 15.178578 1.075909 -14.582047
v 1.075902 15.178576 -14.582046
v 19.149137 5.046469 -14.264764
@@ -147,27 +147,27 @@ f 49/49 52/50 50/51
f 53/52 56/53 55/54
f 49/49 51/55 52/50
f 53/52 54/56 56/53
-v 12.863472 5.606542 -14.225430
-v 5.505581 12.964426 -14.225430
-v 14.446635 7.189702 -14.098923
-v 7.088743 14.547589 -14.098923
-v -12.863472 5.606542 -14.225430
-v -5.505581 12.964426 -14.225430
-v -14.446635 7.189702 -14.098923
-v -7.088743 14.547589 -14.098923
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.888596 0.500182
-vt 0.888596 0.749152
-vt 0.900723 0.500182
-vt 0.900723 0.749152
+v 13.042291 5.472427 -14.225430
+v 5.036181 13.545589 -14.225430
+v 14.625454 7.055587 -14.098923
+v 6.619343 15.128753 -14.098923
+v -13.042291 5.472427 -14.225430
+v -5.036181 13.545589 -14.225430
+v -14.625454 7.055587 -14.098923
+v -6.619343 15.128753 -14.098923
vt 0.900723 0.749152
vt 0.888596 0.500182
+vt 0.888596 0.749152
+vt 0.888596 0.500182
+vt 0.900723 0.749152
+vt 0.888596 0.749152
+vt 0.900723 0.500182
+vt 0.900723 0.500182
s off
-f 57/57 60/58 58/59
-f 61/60 64/61 63/62
-f 57/57 59/63 60/58
-f 61/60 62/64 64/61
+f 59/57 58/58 57/59
+f 62/60 63/61 61/62
+f 59/57 60/63 58/58
+f 62/60 64/64 63/61
v 4.693238 0.813037 19.789230
v 4.693230 0.813042 -82.453156
v 4.350243 0.470041 19.789230
@@ -176,14 +176,14 @@ v -4.693238 0.813037 19.789230
v -4.693230 0.813042 -82.453156
v -4.350243 0.470041 19.789230
v -4.350235 0.470047 -82.453156
-vt 0.887984 0.500428
-vt 0.887984 0.749582
-vt 0.875393 0.749582
-vt 0.887984 0.500428
-vt 0.875392 0.500428
-vt 0.875393 0.749582
-vt 0.875392 0.500428
-vt 0.887984 0.749582
+vt 0.999332 0.500428
+vt 0.999332 0.749582
+vt 0.986741 0.749582
+vt 0.999332 0.500428
+vt 0.986741 0.500428
+vt 0.986741 0.749582
+vt 0.986741 0.500428
+vt 0.999332 0.749582
s off
f 65/65 66/66 68/67
f 69/68 71/69 72/70
@@ -201,18 +201,18 @@ v -3.277436 0.390707 -7.080121
v -3.277424 0.390714 -58.498669
v -3.762470 0.875742 -7.385828
v -3.277435 0.390707 -7.385828
-vt 0.875212 0.517649
-vt 0.888051 0.517649
-vt 0.888052 0.749677
-vt 0.875212 0.500256
-vt 0.888051 0.500256
-vt 0.888052 0.749677
-vt 0.888051 0.517649
-vt 0.875212 0.517649
-vt 0.888051 0.500256
-vt 0.875212 0.500256
-vt 0.875212 0.749677
-vt 0.875212 0.749677
+vt 0.986050 0.517649
+vt 0.998890 0.517649
+vt 0.998890 0.749677
+vt 0.986050 0.500256
+vt 0.998890 0.500256
+vt 0.998890 0.749677
+vt 0.998890 0.517649
+vt 0.986050 0.517649
+vt 0.998890 0.500256
+vt 0.986050 0.500256
+vt 0.986050 0.749677
+vt 0.986050 0.749677
s off
f 78/73 77/74 74/75
f 75/76 73/77 77/74
@@ -222,36 +222,3 @@ f 78/73 74/75 76/83
f 75/76 77/74 78/73
f 80/78 84/80 82/84
f 83/79 81/82 84/80
-v 1.374993 -0.006546 -1.379147
-v 1.595471 -0.006546 -1.599395
-v -1.597251 -0.006546 1.593773
-v 1.595413 -0.006546 1.593600
-v -1.376857 -0.006546 1.373170
-v 1.374951 -0.006546 1.373394
-v -1.376821 -0.006546 -1.379086
-v -1.597157 -0.006546 -1.597492
-vt 0.875646 0.711989
-vt 0.887532 0.531546
-vt 0.875646 0.517147
-vt 0.875646 0.517020
-vt 0.887532 0.736731
-vt 0.887532 0.531418
-vt 0.875646 0.517020
-vt 0.887532 0.736731
-vt 0.887532 0.531418
-vt 0.875646 0.517147
-vt 0.887532 0.736731
-vt 0.887532 0.531546
-vt 0.887532 0.736731
-vt 0.875646 0.711989
-vt 0.875646 0.711989
-vt 0.875646 0.711989
-s off
-f 85/85 92/86 91/87
-f 87/88 90/89 89/90
-f 89/91 92/92 87/93
-f 88/94 85/95 90/96
-f 85/85 86/97 92/86
-f 87/88 88/98 90/89
-f 89/91 91/99 92/92
-f 88/94 86/100 85/95
diff --git a/assets/shaders/stageAdditive.js b/assets/shaders/stageAdditive.js
index 1cb09eb..5a5a124 100644
--- a/assets/shaders/stageAdditive.js
+++ b/assets/shaders/stageAdditive.js
@@ -14,13 +14,31 @@ module.exports = {
varying vec2 uvs;
varying vec3 worldPos;
uniform vec3 tunnelNeon;
+ uniform vec3 leftLaser;
+ uniform vec3 rightLaser;
+ uniform vec3 floorNeon;
uniform sampler2D src;
void main() {
+ float mask;
vec4 col = texture2D(src, uvs);
- float mask = min(step(0.87, uvs.x), step(0.5, uvs.y));
- mask = min(mask, 1.0 - step(0.75, uvs.y));
+
+ // tunnel neon
+ mask = step(0.87, uvs.x) * step(0.5, uvs.y) * (1.0 - step(0.935, uvs.x)) * ( 1.0 - step(0.75, uvs.y));
col.xyz = mix(col.xyz, col.xyz * tunnelNeon, mask);
+
+ // floor & corridor neons
+ mask = step(0.935, uvs.x) * step(0.5, uvs.y) * ( 1.0 - step(0.75, uvs.y));
+ col.xyz = mix(col.xyz, col.xyz * floorNeon, mask);
+
+ // left laser
+ mask = step(0.5, uvs.x) * (1.0 - step(0.625, uvs.x)) * (1.0 - step(0.5, uvs.y));
+ col.xyz = mix(col.xyz, col.xyz * leftLaser, mask);
+
+ // right laser
+ mask = step(0.625, uvs.x) * (1.0 - step(0.75, uvs.x)) * (1.0 - step(0.5, uvs.y));
+ col.xyz = mix(col.xyz, col.xyz * rightLaser, mask);
+
gl_FragColor = col;
}
`
diff --git a/src/assets.html b/src/assets.html
index e8898bc..8c292af 100644
--- a/src/assets.html
+++ b/src/assets.html
@@ -8,7 +8,7 @@
-
+
@@ -27,6 +27,9 @@
+
+
+
@@ -153,6 +156,8 @@
animation__mouseleave2="property: scale; to: 1 1 1; from: 1.1 1.1 1.1; startEvents: mouseleave; pauseEvents: mouseenter; dur: 150">
+
+
-
+
+
+
+
diff --git a/src/components/beat-loader.js b/src/components/beat-loader.js
index 87443d3..16bd170 100644
--- a/src/components/beat-loader.js
+++ b/src/components/beat-loader.js
@@ -286,31 +286,27 @@ AFRAME.registerComponent('beat-loader', {
case 1:
this.stageColors.setColor('tunnel', event._value);
break;
- case 200:
- this.stageColors.setColor('leftStageLaser0', event._value);
- this.stageColors.setColor('leftStageLaser1', event._value);
- this.stageColors.setColor('leftStageLaser2', event._value);
+ case 2:
+ this.stageColors.setColor('leftlaser', event._value);
break;
- case 300:
- this.stageColors.setColor('rightStageLaser0', event._value);
- this.stageColors.setColor('rightStageLaser1', event._value);
- this.stageColors.setColor('rightStageLaser2', event._value);
+ case 3:
+ this.stageColors.setColor('rightlaser', event._value);
break;
case 400:
this.stageColors.setColor('floor', event._value);
this.stageColors.setColor('stageNeon', event._value);
break;
- case 800:
+ case 8:
this.twister.components.twister.pulse(event._value);
break;
- case 900:
+ case 9:
// zoom was a bit disturbing
this.twister.components.twister.pulse(event._value);
break;
- case 1200:
+ case 12:
this.leftStageLasers.components['stage-lasers'].pulse(event._value);
break;
- case 1300:
+ case 13:
this.rightStageLasers.components['stage-lasers'].pulse(event._value);
break;
}
diff --git a/src/components/beat.js b/src/components/beat.js
index 3f355b9..08550c7 100644
--- a/src/components/beat.js
+++ b/src/components/beat.js
@@ -629,7 +629,6 @@ AFRAME.registerComponent('beat', {
returnToPool: function (force) {
if (!this.backToPool && !force) { return; }
- console.log('returning ' + this.poolName + ' to pool');
this.el.sceneEl.components[this.poolName].returnEntity(this.el);
},
diff --git a/src/components/materials.js b/src/components/materials.js
index 4393ece..1bfa332 100644
--- a/src/components/materials.js
+++ b/src/components/materials.js
@@ -9,7 +9,7 @@ AFRAME.registerSystem('materials', {
this.stageNormal = new THREE.ShaderMaterial({
uniforms: {
- color: {value: new THREE.Vector3(0, 0.48, 0.72) },
+ color: {value: new THREE.Vector3(0, 0.48, 0.72)},
src: {value: new THREE.TextureLoader().load(document.getElementById('atlasImg').src)},
},
vertexShader: stageNormalShaders.vertexShader,
@@ -20,7 +20,10 @@ AFRAME.registerSystem('materials', {
this.stageAdditive = new THREE.ShaderMaterial({
uniforms: {
- tunnelNeon: {value: new THREE.Vector3(0, 0, 1) },
+ tunnelNeon: {value: new THREE.Vector3(0, 0, 1)},
+ floorNeon: {value: new THREE.Vector3(0, 0, 1)},
+ leftLaser: {value: new THREE.Vector3(0, 0, 1)},
+ rightLaser: {value: new THREE.Vector3(0, 0, 1)},
src: {value: new THREE.TextureLoader().load(document.getElementById('atlasImg').src)},
},
vertexShader: stageAdditiveShaders.vertexShader,
diff --git a/src/index.html b/src/index.html
index 746ad5b..49a2fb3 100644
--- a/src/index.html
+++ b/src/index.html
@@ -18,7 +18,7 @@
-
-
-
-
+
+
+
-
-
-
-
-
+
+
+
-
-
-
+
+
+
+
+
+
+ material="src: #atlasImg; fog: false; shader: flat; transparent: true;">
@@ -145,3 +146,4 @@
rotation="-45 0 0">
+f
\ No newline at end of file