diff --git a/src/assets.html b/src/assets.html
index 8c292af..d70a84b 100644
--- a/src/assets.html
+++ b/src/assets.html
@@ -159,33 +159,33 @@
diff --git a/src/components/materials.js b/src/components/materials.js
index 1bfa332..86b4a6a 100644
--- a/src/components/materials.js
+++ b/src/components/materials.js
@@ -1,15 +1,12 @@
-const stageNormalShaders = require('../../assets/shaders/stageNormal.js')
-const stageAdditiveShaders = require('../../assets/shaders/stageAdditive.js')
+const stageNormalShaders = require('../../assets/shaders/stageNormal.js');
+const stageAdditiveShaders = require('../../assets/shaders/stageAdditive.js');
+const COLORS = require('../constants/colors.js');
AFRAME.registerSystem('materials', {
init: function () {
- this.black = new THREE.MeshLambertMaterial({color: 0x000000, flatShading: true});
- this.default = new THREE.MeshLambertMaterial({color: 0xff0000, flatShading: true});
- this.neon = new THREE.MeshBasicMaterial({color: 0x9999ff, fog: false});
-
this.stageNormal = new THREE.ShaderMaterial({
uniforms: {
- color: {value: new THREE.Vector3(0, 0.48, 0.72)},
+ color: {value: new THREE.Color(COLORS.BG_BLUE)},
src: {value: new THREE.TextureLoader().load(document.getElementById('atlasImg').src)},
},
vertexShader: stageNormalShaders.vertexShader,
@@ -20,10 +17,10 @@ AFRAME.registerSystem('materials', {
this.stageAdditive = new THREE.ShaderMaterial({
uniforms: {
- 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)},
+ tunnelNeon: {value: new THREE.Color(COLORS.NEON_BLUE)},
+ floorNeon: {value: new THREE.Color(COLORS.NEON_BLUE)},
+ leftLaser: {value: new THREE.Color(COLORS.NEON_BLUE)},
+ rightLaser: {value: new THREE.Color(COLORS.NEON_BLUE)},
src: {value: new THREE.TextureLoader().load(document.getElementById('atlasImg').src)},
},
vertexShader: stageAdditiveShaders.vertexShader,
diff --git a/src/constants/colors.js b/src/constants/colors.js
new file mode 100644
index 0000000..047ac7f
--- /dev/null
+++ b/src/constants/colors.js
@@ -0,0 +1,17 @@
+module.exports = {
+ OFF: '#111',
+ RED: '#f00',
+ BLUE: '#00f',
+
+ BG_OFF: '#222',
+ BG_BLUE: '#007AB8',
+ BG_BRIGHTBLUE: '#5FCCFF',
+ BG_RED: '#B80000',
+ BG_BRIGHTRED: '#FF4343',
+
+ NEON_OFF: '#000',
+ NEON_BLUE: '#00f',
+ NEON_BRIGHTBLUE: '#aaf',
+ NEON_RED: '#f00',
+ NEON_BRIGHTRED: '#faa',
+};
diff --git a/webpack.config.js b/webpack.config.js
index c811db0..0665ece 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -5,6 +5,7 @@ var htmlMinify = require('html-minifier').minify;
var ip = require('ip');
var path = require('path');
var webpack = require('webpack');
+const COLORS = require('./src/constants/colors.js');
// Set up templating.
var nunjucks = Nunjucks.configure(path.resolve(__dirname, 'src'), {
@@ -14,6 +15,7 @@ nunjucks.addGlobal('DEBUG_AFRAME', !!process.env.DEBUG_AFRAME);
nunjucks.addGlobal('DEBUG_KEYBOARD', !!process.env.DEBUG_KEYBOARD);
nunjucks.addGlobal('HOST', ip.address());
nunjucks.addGlobal('IS_PRODUCTION', process.env.NODE_ENV === 'production');
+nunjucks.addGlobal('COLORS', COLORS);
// Initial Nunjucks render.
fs.writeFileSync('index.html', nunjucks.render('index.html'));