@@ -146,17 +146,16 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
146
146
var _t = this ;
147
147
var children = _t . _children , locBakeSprite = this . _bakeSprite ;
148
148
//compute the bounding box of the bake layer.
149
+ this . _transformForRenderer ( ) ;
149
150
var boundingBox = this . _getBoundingBoxForBake ( ) ;
150
- boundingBox . width = 0 | boundingBox . width ;
151
- boundingBox . height = 0 | boundingBox . height ;
151
+ boundingBox . width = 0 | ( boundingBox . width + 0.5 ) ;
152
+ boundingBox . height = 0 | ( boundingBox . height + 0.5 ) ;
152
153
var bakeContext = locBakeSprite . getCacheContext ( ) ;
153
154
locBakeSprite . resetCanvasSize ( boundingBox . width , boundingBox . height ) ;
154
155
bakeContext . translate ( 0 - boundingBox . x , boundingBox . height + boundingBox . y ) ;
155
-
156
156
// invert
157
157
var t = cc . affineTransformInvert ( this . _transformWorld ) ;
158
- var scaleX = cc . view . getScaleX ( ) , scaleY = cc . view . getScaleY ( ) ;
159
- bakeContext . transform ( t . a , t . c , t . b , t . d , t . tx * scaleX , - t . ty * scaleY ) ;
158
+ bakeContext . transform ( t . a , t . c , t . b , t . d , t . tx , - t . ty ) ;
160
159
161
160
//reset the bake sprite's position
162
161
var anchor = locBakeSprite . getAnchorPointInPoints ( ) ;
@@ -169,6 +168,7 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
169
168
children [ i ] . visit ( bakeContext ) ;
170
169
}
171
170
cc . renderer . _renderingToCacheCanvas ( bakeContext , this . __instanceId ) ;
171
+ locBakeSprite . transform ( ) ; //because bake sprite's position was changed at rendering.
172
172
this . _cacheDirty = false ;
173
173
}
174
174
} ;
@@ -230,7 +230,7 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
230
230
* CCLayerColor is a subclass of CCLayer that implements the CCRGBAProtocol protocol. <br/>
231
231
* All features from CCLayer are valid, plus the following new features: <br/>
232
232
* - opacity <br/>
233
- * - RGB colors </p>
233
+ * - RGB colors </p>
234
234
* @class
235
235
* @extends cc.Layer
236
236
*
@@ -467,8 +467,7 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
467
467
}
468
468
// invert
469
469
var t = cc . affineTransformInvert ( this . _transformWorld ) ;
470
- var scaleX = cc . view . getScaleX ( ) , scaleY = cc . view . getScaleY ( ) ;
471
- bakeContext . transform ( t . a , t . c , t . b , t . d , t . tx * scaleX , - t . ty * scaleY ) ;
470
+ bakeContext . transform ( t . a , t . c , t . b , t . d , t . tx , - t . ty ) ;
472
471
473
472
var child ;
474
473
cc . renderer . _turnToCacheMode ( this . __instanceId ) ;
@@ -492,6 +491,7 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
492
491
if ( _t . _rendererCmd )
493
492
cc . renderer . pushRenderCommand ( _t . _rendererCmd ) ;
494
493
cc . renderer . _renderingToCacheCanvas ( bakeContext , this . __instanceId ) ;
494
+ locBakeSprite . transform ( ) ;
495
495
this . _cacheDirty = false ;
496
496
}
497
497
} ;
0 commit comments