@@ -54,15 +54,19 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
54
54
* drawing all renderer command to cache canvas' context
55
55
* @param {CanvasRenderingContext2D } ctx
56
56
* @param {Number } [instanceID]
57
+ * @param {Number } [scaleX]
58
+ * @param {Number } [scaleY]
57
59
*/
58
- _renderingToCacheCanvas : function ( ctx , instanceID ) {
60
+ _renderingToCacheCanvas : function ( ctx , instanceID , scaleX , scaleY ) {
59
61
if ( ! ctx )
60
62
cc . log ( "The context of RenderTexture is invalid." ) ;
61
63
64
+ scaleX = cc . isUndefined ( scaleX ) ? 1 : scaleX ;
65
+ scaleY = cc . isUndefined ( scaleY ) ? 1 : scaleY ;
62
66
instanceID = instanceID || this . _currentID ;
63
67
var locCmds = this . _cacheToCanvasCmds [ instanceID ] , i , len ;
64
68
for ( i = 0 , len = locCmds . length ; i < len ; i ++ ) {
65
- locCmds [ i ] . rendering ( ctx , 1 , 1 ) ;
69
+ locCmds [ i ] . rendering ( ctx , scaleX , scaleY ) ;
66
70
}
67
71
locCmds . length = 0 ;
68
72
var locIDs = this . _cacheInstanceIds ;
@@ -530,15 +534,27 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
530
534
531
535
//draw sprite
532
536
var image = locSprite . _texture . getHtmlElementObj ( ) ;
533
- context . drawImage ( image ,
534
- locTextureCoord . renderX ,
535
- locTextureCoord . renderY ,
536
- locTextureCoord . width ,
537
- locTextureCoord . height ,
538
- flipXOffset , flipYOffset ,
539
- locDrawSizeCanvas . width ,
540
- locDrawSizeCanvas . height
541
- ) ;
537
+ if ( locSprite . _colorized ) {
538
+ context . drawImage ( image ,
539
+ 0 ,
540
+ 0 ,
541
+ locTextureCoord . width ,
542
+ locTextureCoord . height ,
543
+ flipXOffset , flipYOffset ,
544
+ locDrawSizeCanvas . width ,
545
+ locDrawSizeCanvas . height
546
+ ) ;
547
+ } else {
548
+ context . drawImage ( image ,
549
+ locTextureCoord . renderX ,
550
+ locTextureCoord . renderY ,
551
+ locTextureCoord . width ,
552
+ locTextureCoord . height ,
553
+ flipXOffset , flipYOffset ,
554
+ locDrawSizeCanvas . width ,
555
+ locDrawSizeCanvas . height
556
+ ) ;
557
+ }
542
558
543
559
context . restore ( ) ;
544
560
cc . g_NumberOfDraws ++ ;
0 commit comments