diff --git a/index.html b/index.html
index ac6c6f4780a9fd8ab708adf0bee7540eb4f2e648..8f483e02a06464c36039fcb95f2da02ff04bf367 100644
--- a/index.html
+++ b/index.html
@@ -36,6 +36,8 @@
     <!--numerical javascript-->
     <script src="dependencies/numeric-1.2.6.js"></script>
 
+    <script src="js/models/AllAppPLists.js"></script>
+
     <!--multi-threading-->
     <script src="js/multiThreading/worker.js"></script>
     <script src="js/multiThreading/persistentWorkers.js"></script><!--global workers-->
@@ -82,7 +84,6 @@
     <script src="js/models/FillGeometry.js"></script>
     <script src="js/models/BasePlane.js"></script>
     <script src="js/models/extrudeVisualizer.js"></script>
-    <script src="js/models/AllAppPLists.js"></script>
     <script src="js/models/AppState.js"></script>
     <script src="js/cam/Machine.js"></script>
     <script src="js/cam/MachineOneBit.js"></script>
diff --git a/js/cells/supercells/GIKSuperCell.js b/js/cells/supercells/GIKSuperCell.js
index c6f34311df14165ed3ca204f4c6709f446ebce5f..3e90ad33926786f86ba73e61cffe573f8dd80175 100644
--- a/js/cells/supercells/GIKSuperCell.js
+++ b/js/cells/supercells/GIKSuperCell.js
@@ -2,6 +2,19 @@
  * Created by aghassaei on 5/26/15.
  */
 
+var allGIKMaterials = {};
+var gikMaterialList = AppPList().allMaterialTypes.cube.gik;
+_.each(_.keys(gikMaterialList), function(material){
+    allGIKMaterials[material] = new THREE.MeshLambertMaterial({color:gikMaterialList[material].color});
+});
+
+function changeGikMaterials(){
+    _.each(_.keys(allGIKMaterials), function(material){
+        if (globals.appState.get("realisticColorScheme")) allGIKMaterials[material].color = new THREE.Color(gikMaterialList[material].color);
+        else allGIKMaterials[material].color = new THREE.Color(gikMaterialList[material].altColor);
+    });
+}
+
 
 GIKSuperCell = function(length, range, cells){
     if (range) this.indices = _.clone(range.max);
@@ -57,8 +70,7 @@ GIKSuperCell.prototype._buildWireframe = function(mesh){
 };
 
 GIKSuperCell.prototype.getMaterial = function(){
-    var material = globals.plist.allMaterialTypes[globals.lattice.get("cellType")][globals.lattice.get("connectionType")][globals.lattice.get("materialType")];
-    return new THREE.MeshLambertMaterial({color:material.color});
+    return allGIKMaterials[globals.lattice.get("materialType")];
 };
 
 GIKSuperCell.prototype.setMode = function(mode){
diff --git a/js/menus/PartMenuView.js b/js/menus/PartMenuView.js
index 03050fe082f03062d7105c0c8c3aba73b4a02283..991c2150df3f936519a482c89dd5044f3eaf2c40 100644
--- a/js/menus/PartMenuView.js
+++ b/js/menus/PartMenuView.js
@@ -45,7 +45,7 @@ PartMenuView = Backbone.View.extend({
         <label class="radio colorSwatches">\
             <input type="radio" <%if (key == materialType){ %>checked<%}%> name="materialType" value="<%= key %>" data-toggle="radio" class="custom-radio lattice"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span>\
             <div class="materialColorSwatch">\
-            <div style="background-color:<%= allMaterialTypes[cellType][connectionType][key].color %>"></div>\
+            <div style="background-color:<% if(realisticColorScheme){ %><%= allMaterialTypes[cellType][connectionType][key].color %><% }else{ %><%= allMaterialTypes[cellType][connectionType][key].altColor %><% } %>"></div>\
             <span><%= allMaterialTypes[cellType][connectionType][key].name %></span></div>\
         </label>\
         <% }); %>\
diff --git a/js/models/AllAppPLists.js b/js/models/AllAppPLists.js
index c4f7e6da524f68fd9ddad01befb830b354ca0a59..ad0c995b8021b213093a432343eb5a3d3550a165 100644
--- a/js/models/AllAppPLists.js
+++ b/js/models/AllAppPLists.js
@@ -107,7 +107,7 @@ function AppPList(){
                 silicon: {
                     name: "Silicon",
                     color: "#bcc6cc",
-                    altColor: "#34495e"
+                    altColor: "#3498db"
                 }
             }
         },
diff --git a/js/models/AppState.js b/js/models/AppState.js
index c70fe3e05023a98c13f195fe9507bfdf0f02d9fe..7ca3e8127bef0207e7a17d41deae65cf5d22144a 100644
--- a/js/models/AppState.js
+++ b/js/models/AppState.js
@@ -46,6 +46,7 @@ AppState = Backbone.Model.extend({
 
         this.listenTo(this, "change:currentTab", this._tabChanged);
         this.listenTo(this, "change:currentNav", this._navChanged);
+        this.listenTo(this, "change:realisticColorScheme", this._updateColorScheme);
 
         this.downKeys = {};//track keypresses to prevent repeat keystrokeson hold
 
@@ -95,6 +96,11 @@ AppState = Backbone.Model.extend({
             this.get("lastAssembleTab"));
     },
 
+    _updateColorScheme: function(){
+        changeGikMaterials();
+        globals.three.render();
+    },
+
     ///////////////////////////////////////////////////////////////////////////////
     /////////////////////KEY BINDINGS//////////////////////////////////////////////
     ///////////////////////////////////////////////////////////////////////////////