diff options
Diffstat (limited to 'js')
-rwxr-xr-x | js/document/html-document.js | 14 | ||||
-rwxr-xr-x | js/helper-classes/3D/vec-utils.js | 71 | ||||
-rwxr-xr-x | js/helper-classes/RDGE/src/core/script/MeshManager.js | 2 | ||||
-rwxr-xr-x | js/helper-classes/RDGE/src/core/script/run_state.js | 16 | ||||
-rwxr-xr-x | js/lib/geom/geom-obj.js | 6 | ||||
-rwxr-xr-x | js/lib/rdge/materials/flat-material.js | 6 | ||||
-rwxr-xr-x | js/lib/rdge/materials/uber-material.js | 130 |
7 files changed, 207 insertions, 38 deletions
diff --git a/js/document/html-document.js b/js/document/html-document.js index 051490f5..d4db6e2f 100755 --- a/js/document/html-document.js +++ b/js/document/html-document.js | |||
@@ -207,9 +207,18 @@ exports.HTMLDocument = Montage.create(TextDocument, { | |||
207 | }, | 207 | }, |
208 | set: function(value) { | 208 | set: function(value) { |
209 | var elt = this.documentRoot; | 209 | var elt = this.documentRoot; |
210 | if (elt) { | 210 | if (elt) |
211 | { | ||
211 | var nWorlds= value.length; | 212 | var nWorlds= value.length; |
212 | for (var i=0; i<nWorlds; i++) { | 213 | for (var i=0; i<nWorlds; i++) |
214 | { | ||
215 | /* | ||
216 | // Use this code to test the runtime version of WebGL | ||
217 | var cdm = new CanvasDataManager(); | ||
218 | cdm.loadGLData(elt, value, null ); | ||
219 | */ | ||
220 | |||
221 | // /* | ||
213 | var importStr = value[i]; | 222 | var importStr = value[i]; |
214 | var startIndex = importStr.indexOf( "id: " ); | 223 | var startIndex = importStr.indexOf( "id: " ); |
215 | if (startIndex >= 0) { | 224 | if (startIndex >= 0) { |
@@ -236,6 +245,7 @@ exports.HTMLDocument = Montage.create(TextDocument, { | |||
236 | } | 245 | } |
237 | } | 246 | } |
238 | } | 247 | } |
248 | // */ | ||
239 | } | 249 | } |
240 | } | 250 | } |
241 | } | 251 | } |
diff --git a/js/helper-classes/3D/vec-utils.js b/js/helper-classes/3D/vec-utils.js index 3db95ab7..e6db4a8d 100755 --- a/js/helper-classes/3D/vec-utils.js +++ b/js/helper-classes/3D/vec-utils.js | |||
@@ -191,5 +191,74 @@ var VecUtils = exports.VecUtils = Object.create(Object.prototype, | |||
191 | 191 | ||
192 | return vec; | 192 | return vec; |
193 | } | 193 | } |
194 | } | 194 | }, |
195 | |||
196 | matI : | ||
197 | { | ||
198 | value: function(dimen) | ||
199 | { | ||
200 | var mat = []; | ||
201 | for (var i=0; i<dimen*dimen; i++) mat.push(0); | ||
202 | |||
203 | var index = 0; | ||
204 | for (var i=0; i<dimen; i++) | ||
205 | { | ||
206 | mat[index] = 1.0; | ||
207 | index += dimen + 1; | ||
208 | } | ||
209 | |||
210 | return mat; | ||
211 | } | ||
212 | }, | ||
213 | |||
214 | matTranslation: | ||
215 | { | ||
216 | value: function (vec) | ||
217 | { | ||
218 | var mat = Matrix.I(4); | ||
219 | glmat4.translate(mat, vec); | ||
220 | return mat; | ||
221 | } | ||
222 | }, | ||
223 | |||
224 | matRotationX: | ||
225 | { | ||
226 | value: function( angle ) | ||
227 | { | ||
228 | var mat = Matrix.I(4); | ||
229 | glmat4.rotateX(mat, angle); | ||
230 | return mat; | ||
231 | } | ||
232 | }, | ||
233 | |||
234 | matRotationY: | ||
235 | { | ||
236 | value: function( angle ) | ||
237 | { | ||
238 | var mat = Matrix.I(4); | ||
239 | glmat4.rotateY(mat, angle); | ||
240 | return mat; | ||
241 | } | ||
242 | }, | ||
243 | |||
244 | matRotationZ: | ||
245 | { | ||
246 | value: function( angle ) | ||
247 | { | ||
248 | var mat = Matrix.I(4); | ||
249 | glmat4.rotateZ(mat, angle); | ||
250 | return mat; | ||
251 | } | ||
252 | }, | ||
253 | |||
254 | matRotation: | ||
255 | { | ||
256 | value: function(angle, axis) | ||
257 | { | ||
258 | var mat = Matrix.I(4); | ||
259 | glmat4.rotate(mat, angle, axis); | ||
260 | return mat; | ||
261 | } | ||
262 | }, | ||
263 | |||
195 | }); \ No newline at end of file | 264 | }); \ No newline at end of file |
diff --git a/js/helper-classes/RDGE/src/core/script/MeshManager.js b/js/helper-classes/RDGE/src/core/script/MeshManager.js index 43813078..7dfc79d4 100755 --- a/js/helper-classes/RDGE/src/core/script/MeshManager.js +++ b/js/helper-classes/RDGE/src/core/script/MeshManager.js | |||
@@ -69,7 +69,7 @@ MeshManager.prototype.deleteMesh = function (name) | |||
69 | if (model) | 69 | if (model) |
70 | { | 70 | { |
71 | g_Engine.ctxMan.forEach(function(context) | 71 | g_Engine.ctxMan.forEach(function(context) |
72 | { | 72 | { |
73 | context.renderer.deletePrimitive(model.primitive); | 73 | context.renderer.deletePrimitive(model.primitive); |
74 | }); | 74 | }); |
75 | 75 | ||
diff --git a/js/helper-classes/RDGE/src/core/script/run_state.js b/js/helper-classes/RDGE/src/core/script/run_state.js index acdb6797..a5981caa 100755 --- a/js/helper-classes/RDGE/src/core/script/run_state.js +++ b/js/helper-classes/RDGE/src/core/script/run_state.js | |||
@@ -30,9 +30,9 @@ RunState.prototype.Init = function() | |||
30 | this.userRunState.init(); | 30 | this.userRunState.init(); |
31 | } | 31 | } |
32 | 32 | ||
33 | if (this.hasUserState && this.userRunState && this.userRunState.onRunState) | 33 | if (this.hasUserState && this.userRunState && this.userRunState.onRunState) |
34 | this.userRunState.onRunState(); | 34 | this.userRunState.onRunState(); |
35 | 35 | ||
36 | 36 | ||
37 | //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// | 37 | //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// |
38 | 38 | ||
@@ -97,11 +97,11 @@ RunState.prototype.ReInit = function() | |||
97 | if(!this.initialized) | 97 | if(!this.initialized) |
98 | { | 98 | { |
99 | this.Init(); | 99 | this.Init(); |
100 | } | 100 | } |
101 | else | 101 | else |
102 | { | 102 | { |
103 | if (this.hasUserState && this.userRunState && this.userRunState.onRunState) | 103 | if (this.hasUserState && this.userRunState && this.userRunState.onRunState) |
104 | this.userRunState.onRunState(); | 104 | this.userRunState.onRunState(); |
105 | } | 105 | } |
106 | } | 106 | } |
107 | 107 | ||
diff --git a/js/lib/geom/geom-obj.js b/js/lib/geom/geom-obj.js index f285f24a..a64980e0 100755 --- a/js/lib/geom/geom-obj.js +++ b/js/lib/geom/geom-obj.js | |||
@@ -325,9 +325,11 @@ var GeomObj = function GLGeomObj() { | |||
325 | if (mat) | 325 | if (mat) |
326 | mat.import( importStr ); | 326 | mat.import( importStr ); |
327 | 327 | ||
328 | var endIndex = importStr.indexOf( "endMaterial\n" ); | 328 | // pull off the end of the material |
329 | var endMat = "endMaterial\n"; | ||
330 | var endIndex = importStr.indexOf( endMat ); | ||
329 | if (endIndex < 0) break; | 331 | if (endIndex < 0) break; |
330 | importStr = importStr.substr( endIndex ); | 332 | importStr = importStr.substr( endIndex + endMat.length ); |
331 | } | 333 | } |
332 | } | 334 | } |
333 | 335 | ||
diff --git a/js/lib/rdge/materials/flat-material.js b/js/lib/rdge/materials/flat-material.js index 97e4f646..fff0e68e 100755 --- a/js/lib/rdge/materials/flat-material.js +++ b/js/lib/rdge/materials/flat-material.js | |||
@@ -102,13 +102,7 @@ var FlatMaterial = function FlatMaterial() { | |||
102 | try | 102 | try |
103 | { | 103 | { |
104 | var color = eval( "[" + pu.nextValue( "color: " ) + "]" ); | 104 | var color = eval( "[" + pu.nextValue( "color: " ) + "]" ); |
105 | |||
106 | this.setProperty( "color", color); | 105 | this.setProperty( "color", color); |
107 | |||
108 | var endKey = "endMaterial\n"; | ||
109 | var index = importStr.indexOf( endKey ); | ||
110 | index += endKey.length; | ||
111 | rtnStr = importStr.substr( index ); | ||
112 | } | 106 | } |
113 | catch (e) | 107 | catch (e) |
114 | { | 108 | { |
diff --git a/js/lib/rdge/materials/uber-material.js b/js/lib/rdge/materials/uber-material.js index 655d8e2a..91f43754 100755 --- a/js/lib/rdge/materials/uber-material.js +++ b/js/lib/rdge/materials/uber-material.js | |||
@@ -4,6 +4,7 @@ | |||
4 | (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. | 4 | (c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved. |
5 | </copyright> */ | 5 | </copyright> */ |
6 | 6 | ||
7 | var MaterialParser = require("js/lib/rdge/materials/material-parser").MaterialParser; | ||
7 | var Material = require("js/lib/rdge/materials/material").Material; | 8 | var Material = require("js/lib/rdge/materials/material").Material; |
8 | 9 | ||
9 | var UberMaterial = function UberMaterial() { | 10 | var UberMaterial = function UberMaterial() { |
@@ -375,19 +376,111 @@ var UberMaterial = function UberMaterial() { | |||
375 | var endKey = "endMaterial\n"; | 376 | var endKey = "endMaterial\n"; |
376 | var index = importStr.indexOf( endKey ); | 377 | var index = importStr.indexOf( endKey ); |
377 | index += endKey.length; | 378 | index += endKey.length; |
378 | importStr = importStr.substr( index ); | 379 | importStr = importStr.slice( 0, index ); |
379 | var pu = new MaterialParser( importStr ); | 380 |