aboutsummaryrefslogtreecommitdiff
path: root/js/lib/rdge/materials
diff options
context:
space:
mode:
Diffstat (limited to 'js/lib/rdge/materials')
-rwxr-xr-xjs/lib/rdge/materials/bump-metal-material.js22
1 files changed, 18 insertions, 4 deletions
diff --git a/js/lib/rdge/materials/bump-metal-material.js b/js/lib/rdge/materials/bump-metal-material.js
index ccd8e3ca..9c9a189a 100755
--- a/js/lib/rdge/materials/bump-metal-material.js
+++ b/js/lib/rdge/materials/bump-metal-material.js
@@ -20,10 +20,13 @@ var BumpMetalMaterial = function BumpMetalMaterial() {
20 this._shaderName = "bumpMetal"; 20 this._shaderName = "bumpMetal";
21 21
22 this._lightDiff = [0.3, 0.3, 0.3, 1.0]; 22 this._lightDiff = [0.3, 0.3, 0.3, 1.0];
23 //this._diffuseTexture = "assets/images/metal.png"; 23
24 //this._diffuseTexture = "assets/images/metal.png";
24 this._diffuseTexture = "texture"; 25 this._diffuseTexture = "texture";
25 this._diffuseWorld = null; // the world that the texture is derived from (if there is one). 26 this._diffuseWorld = null; // the world that the texture is derived from (if there is one).
26 this._specularTexture = "assets/images/silver.png"; 27 this._diffuseTextureObj = null;
28
29 this._specularTexture = "assets/images/silver.png";
27 this._normalTexture = "assets/images/normalMap.png"; 30 this._normalTexture = "assets/images/normalMap.png";
28 31
29 /////////////////////////////////////////////////////////////////////// 32 ///////////////////////////////////////////////////////////////////////
@@ -138,13 +141,20 @@ var BumpMetalMaterial = function BumpMetalMaterial() {
138 var viewUtils = require("js/helper-classes/3D/view-utils").ViewUtils; 141 var viewUtils = require("js/helper-classes/3D/view-utils").ViewUtils;
139 var root = viewUtils.application.ninja.currentDocument.documentRoot; 142 var root = viewUtils.application.ninja.currentDocument.documentRoot;
140 this._diffuseWorld = this.findWorld( this._diffuseTexture, root ); 143 this._diffuseWorld = this.findWorld( this._diffuseTexture, root );
144 if (this._diffuseWorld)
145 {
146 var world = this.getWorld();
147 var tex = new Texture( world );
148 this._diffuseTextureObj = tex;
149 tex.loadFromCanvas( world.getCanvas() );
150 }
141 } 151 }
142 152
143 this.findWorld = function( id, elt ) 153 this.findWorld = function( id, elt )
144 { 154 {
145 if (elt.id && elt.id === id) 155 if (elt.id && elt.id === id)
146 { 156 {
147 if (elt.eltModel && elt.elementModel.shapeModel && elt.elementModel.shapeModel.GLWorld) 157 if (elt.elementModel && elt.elementModel.shapeModel && elt.elementModel.shapeModel.GLWorld)
148 { 158 {
149 var world = elt.elementModel.shapeModel.GLWorld; 159 var world = elt.elementModel.shapeModel.GLWorld;
150 return world; 160 return world;
@@ -174,7 +184,11 @@ var BumpMetalMaterial = function BumpMetalMaterial() {
174 { 184 {
175 var texMapName = this._propValues[this._propNames[index]]; 185 var texMapName = this._propValues[this._propNames[index]];
176 var wrap = 'REPEAT', mips = true; 186 var wrap = 'REPEAT', mips = true;
177 var tex = this.loadTexture( texMapName, wrap, mips ); 187 var tex;
188 if ((index === 1) && this._diffuseTextureObj)
189 tex = this._diffuseTextureObj.getTexture();
190 else
191 tex = this.loadTexture( texMapName, wrap, mips );
178 192
179 if (tex) 193 if (tex)
180 { 194 {