diff options
Diffstat (limited to 'js/helper-classes/RDGE/src/core')
6 files changed, 39 insertions, 18 deletions
diff --git a/js/helper-classes/RDGE/src/core/script/engine.js b/js/helper-classes/RDGE/src/core/script/engine.js index 6fe964c7..5bc9305c 100644 --- a/js/helper-classes/RDGE/src/core/script/engine.js +++ b/js/helper-classes/RDGE/src/core/script/engine.js | |||
@@ -377,13 +377,13 @@ Engine.prototype.getRDGEPanel=function(panelID) | |||
377 | return panelObjectManager.handleToObject(panelID); | 377 | return panelObjectManager.handleToObject(panelID); |
378 | } | 378 | } |
379 | 379 | ||
380 | Engine.prototype.registerCanvas = function(canvas, runState) { | 380 | Engine.prototype.registerCanvas = function(canvas, runState) { |
381 | if (canvas && this.getContext(canvas.id)) | 381 | if (canvas && this.getContext(canvas.rdgeid)) |
382 | return; | 382 | return; |
383 | 383 | ||
384 | canvas.renderer = new _renderer(canvas); // create the renderer for the context | 384 | canvas.renderer = new _renderer(canvas); // create the renderer for the context |
385 | this.canvasToRendererMap[canvas.id] = canvas; // store the canvas in the context map | 385 | this.canvasToRendererMap[canvas.rdgeid] = canvas; // store the canvas in the context map |
386 | canvas.renderer.id = canvas.id; | 386 | canvas.renderer.id = canvas.rdgeid; |
387 | 387 | ||
388 | // configure the state manager for this context | 388 | // configure the state manager for this context |
389 | var stateMan = new stateManager(); | 389 | var stateMan = new stateManager(); |
@@ -391,11 +391,11 @@ Engine.prototype.registerCanvas = function(canvas, runState) { | |||
391 | // add this context to the contextManager and attach the handle to DOM canvas for user retrieval | 391 | // add this context to the contextManager and attach the handle to DOM canvas for user retrieval |
392 | var context = new contextDef(); | 392 | var context = new contextDef(); |
393 | 393 | ||
394 | context.id = canvas.id; | 394 | context.id = canvas.rdgeid; |
395 | context.renderer = canvas.renderer; | 395 | context.renderer = canvas.renderer; |
396 | context.ctxStateManager = stateMan; | 396 | context.ctxStateManager = stateMan; |
397 | context.startUpState; | 397 | context.startUpState; |
398 | context.fpsTracker = new fpsTracker(canvas.id); | 398 | context.fpsTracker = new fpsTracker(canvas.rdgeid); |
399 | 399 | ||
400 | context.renderer.mvMatrix = mat4.identity(); | 400 | context.renderer.mvMatrix = mat4.identity(); |
401 | context.renderer.invMvMatrix = mat4.identity(); | 401 | context.renderer.invMvMatrix = mat4.identity(); |
@@ -471,7 +471,7 @@ Engine.prototype.registerCanvas = function(canvas, runState) { | |||
471 | } | 471 | } |
472 | 472 | ||
473 | Engine.prototype.unregisterCanvas = function(canvas) { | 473 | Engine.prototype.unregisterCanvas = function(canvas) { |
474 | stat.closePage(canvas.id + "_fps"); | 474 | stat.closePage(canvas.rdgeid + "_fps"); |
475 | contextManager.removeObject(canvas.rdgeCtxHandle); | 475 | contextManager.removeObject(canvas.rdgeCtxHandle); |
476 | 476 | ||
477 | } | 477 | } |
diff --git a/js/helper-classes/RDGE/src/core/script/init_state.js b/js/helper-classes/RDGE/src/core/script/init_state.js index 8c69d218..4b97a4f4 100644 --- a/js/helper-classes/RDGE/src/core/script/init_state.js +++ b/js/helper-classes/RDGE/src/core/script/init_state.js | |||
@@ -42,11 +42,16 @@ LoadState.prototype.Init = function() | |||
42 | if(this.sceneName) | 42 | if(this.sceneName) |
43 | { | 43 | { |
44 | this.loadScene("assets_web/mesh/" + this.sceneName + ".json", this.sceneName); | 44 | this.loadScene("assets_web/mesh/" + this.sceneName + ".json", this.sceneName); |
45 | } | 45 | } |
46 | |||
47 | if (this.hasUserState && this.userRunState && this.userRunState.onLoadState) | ||
48 | this.userRunState.onLoadState(); | ||
46 | } | 49 | } |
47 | 50 | ||
48 | LoadState.prototype.ReInit = function() | 51 | LoadState.prototype.ReInit = function() |
49 | { | 52 | { |
53 | if (this.hasUserState && this.userRunState && this.userRunState.onLoadState) | ||
54 | this.userRunState.onLoadState(); | ||
50 | } | 55 | } |
51 | 56 | ||
52 | LoadState.prototype.Resize = function() | 57 | LoadState.prototype.Resize = function() |
diff --git a/js/helper-classes/RDGE/src/core/script/jshader.js b/js/helper-classes/RDGE/src/core/script/jshader.js index f28219cf..36c5939e 100644 --- a/js/helper-classes/RDGE/src/core/script/jshader.js +++ b/js/helper-classes/RDGE/src/core/script/jshader.js | |||
@@ -173,7 +173,7 @@ jshader = function(addr) { | |||
173 | 173 | ||
174 | // if the parameter does not exist in the shader cull it from the pass | 174 | // if the parameter does not exist in the shader cull it from the pass |
175 | if (this.loc == null) { | 175 | if (this.loc == null) { |
176 | window.console.log("ctx:" + ctx.canvas.id + ", technique: " + technique + ", uniform: " + name + " was not found, jshader param will have no affect"); | 176 | window.console.log("ctx:" + ctx.canvas.rdgeid + ", technique: " + technique + ", uniform: " + name + " was not found, jshader param will have no affect"); |
177 | //return; | 177 | //return; |
178 | } | 178 | } |
179 | 179 | ||
@@ -308,7 +308,7 @@ jshader = function(addr) { | |||
308 | } | 308 | } |
309 | } | 309 | } |
310 | 310 | ||
311 | program.ctxId = this.ctx.canvas.id; | 311 | program.ctxId = this.ctx.canvas.rdgeid; |
312 | if (!program) { | 312 | if (!program) { |
313 | this.renderer.console.log("Build errors found in technique: " + t); | 313 | this.renderer.console.log("Build errors found in technique: " + t); |
314 | this.def[t] = null; // remove bad technique | 314 | this.def[t] = null; // remove bad technique |
@@ -322,7 +322,7 @@ jshader = function(addr) { | |||
322 | var gp = new globalParam(this.ctx, p, rdgeGlobalParameters[p], program); | 322 | var gp = new globalParam(this.ctx, p, rdgeGlobalParameters[p], program); |
323 | 323 | ||
324 | if (gp.loc != null) { | 324 | if (gp.loc != null) { |
325 | gp.loc.ctxID = this.ctx.canvas.id; | 325 | gp.loc.ctxID = this.ctx.canvas.rdgeid; |
326 | this[t].passes[i].defParams[p] = gp; | 326 | this[t].passes[i].defParams[p] = gp; |
327 | this.global[p] = gp; | 327 | this.global[p] = gp; |
328 | } | 328 | } |
diff --git a/js/helper-classes/RDGE/src/core/script/renderer.js b/js/helper-classes/RDGE/src/core/script/renderer.js index 0c51d2cb..517947df 100644 --- a/js/helper-classes/RDGE/src/core/script/renderer.js +++ b/js/helper-classes/RDGE/src/core/script/renderer.js | |||
@@ -335,14 +335,19 @@ _renderer = function(canvas) { | |||
335 | 335 | ||
336 | var tex = this.textureMap[name]; | 336 | var tex = this.textureMap[name]; |
337 | 337 | ||
338 | if (tex === undefined) { | 338 | if (tex === undefined) |
339 | 339 | { | |
340 | |||
341 | // load the texture | 340 | // load the texture |
342 | tex = this.createTexture(name + ext, wrap, mips); | 341 | tex = this.createTexture(name + ext, wrap, mips); |
343 | this.textureMap[name] = tex; | 342 | this.textureMap[name] = tex; |
344 | tex.lookUpName = name; | 343 | tex.lookUpName = name; |
344 | tex.previouslyReferenced = false; | ||
345 | } | 345 | } |
346 | else | ||
347 | { | ||
348 | //console.log( "texture already loaded: " + name ); | ||
349 | tex.previouslyReferenced = true; | ||
350 | } | ||
346 | 351 | ||
347 | return tex; | 352 | return tex; |
348 | 353 | ||
@@ -364,6 +369,7 @@ _renderer = function(canvas) { | |||
364 | mips = true; | 369 | mips = true; |
365 | 370 | ||
366 | if (texture) { | 371 | if (texture) { |
372 | //console.log( "createTexture: " + url ); | ||
367 | texture.image = new Image(); | 373 | texture.image = new Image(); |
368 | texture.image.src = url; | 374 | texture.image.src = url; |
369 | texture.image.context = g_Engine.getContext(); | 375 | texture.image.context = g_Engine.getContext(); |
@@ -371,6 +377,8 @@ _renderer = function(canvas) { | |||
371 | texture.image.onload = function() { | 377 | texture.image.onload = function() { |
372 | var stateMan = this.context.ctxStateManager; | 378 | var stateMan = this.context.ctxStateManager; |
373 | stateMan.RDGEInitState.loadTexture(texture); | 379 | stateMan.RDGEInitState.loadTexture(texture); |
380 | //console.log( "loaded texture: " + texture.lookUpName ); | ||
381 | if (texture.callback) texture.callback( texture ); | ||
374 | }; | 382 | }; |
375 | } | 383 | } |
376 | return texture; | 384 | return texture; |
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 ad56d9ea..acdb6797 100644 --- a/js/helper-classes/RDGE/src/core/script/run_state.js +++ b/js/helper-classes/RDGE/src/core/script/run_state.js | |||
@@ -30,6 +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) | ||
34 | this.userRunState.onRunState(); | ||
35 | |||
33 | 36 | ||
34 | //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// | 37 | //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// |
35 | 38 | ||
@@ -94,6 +97,11 @@ RunState.prototype.ReInit = function() | |||
94 | if(!this.initialized) | 97 | if(!this.initialized) |
95 | { | 98 | { |
96 | this.Init(); | 99 | this.Init(); |
100 | } | ||
101 | else | ||
102 | { | ||
103 | if (this.hasUserState && this.userRunState && this.userRunState.onRunState) | ||
104 | this.userRunState.onRunState(); | ||
97 | } | 105 | } |
98 | } | 106 | } |
99 | 107 | ||
@@ -117,7 +125,7 @@ RunState.prototype.Draw = function () | |||
117 | var width = this.renderer.vpWidth; | 125 | var width = this.renderer.vpWidth; |
118 | var height = this.renderer.vpHeight; | 126 | var height = this.renderer.vpHeight; |
119 | 127 | ||
120 | this.renderer._clear(); | 128 | // this.renderer._clear(); |
121 | 129 | ||
122 | this.userRunState.draw(); | 130 | this.userRunState.draw(); |
123 | 131 | ||
diff --git a/js/helper-classes/RDGE/src/core/script/runtime.js b/js/helper-classes/RDGE/src/core/script/runtime.js index 8d8fdf38..18b9b223 100644 --- a/js/helper-classes/RDGE/src/core/script/runtime.js +++ b/js/helper-classes/RDGE/src/core/script/runtime.js | |||
@@ -179,7 +179,7 @@ RDGERequestAnimationFrame = (function() { | |||