Skip to content

Commit de91f2a

Browse files
author
Travis Gesslein
committed
now updating projection uniforms when the projection is changed via ccdirectorwebgl setProjection
1 parent e3407bc commit de91f2a

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

cocos2d/core/CCDirectorWebGL.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ cc.game.addEventListener(cc.game.EVENT_RENDERER_INITED, function () {
118118
cc.eventManager.dispatchEvent(_t._eventProjectionChanged);
119119
cc.setProjectionMatrixDirty();
120120
cc.renderer.childrenOrderDirty = true;
121+
cc.shaderCache.updateProjectionUniforms();
121122
};
122123

123124
_p.setDepthTest = function (on) {

cocos2d/shaders/CCShaderCache.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,19 @@ cc.shaderCache = /** @lends cc.shaderCache# */{
244244
this._programs[cc.SHADER_POSITION_LENGTHTEXTURECOLOR] = program;
245245
this._programs["ShaderPositionLengthTextureColor"] = program;
246246
},
247-
247+
248+
updateProjectionUniforms: function(){
249+
var programs = this._programs;
250+
var keys = Object.keys(programs);
251+
for(var i=0;i<keys.length;++i)
252+
{
253+
var program = programs[keys[i]];
254+
if(program)
255+
{
256+
program._updateProjectionUniform();
257+
}
258+
}
259+
},
248260
/**
249261
* reload the default shaders
250262
*/

0 commit comments

Comments
 (0)