11var GameObject = require ( '../../GameObject' ) ;
2+ var Utils = require ( '../../../renderer/webgl/Utils' ) ;
23
3- var DynamicTilemapLayerWebGLRenderer = function ( renderer , gameObject , interpolationPercentage , camera )
4+ var DynamicTilemapLayerWebGLRenderer = function ( renderer , tilemapLayer , interpolationPercentage , camera )
45{
5- if ( GameObject . RENDER_MASK !== gameObject . renderFlags || ( gameObject . cameraFilter > 0 && ( gameObject . cameraFilter & camera . _id ) ) )
6+ if ( GameObject . RENDER_MASK !== tilemapLayer . renderFlags || ( tilemapLayer . cameraFilter > 0 && ( tilemapLayer . cameraFilter & camera . _id ) ) )
67 {
78 return ;
89 }
910
10- gameObject . cull ( camera ) ;
11+ tilemapLayer . cull ( camera ) ;
1112
12- var renderTiles = gameObject . culledTiles ;
13+ var renderTiles = tilemapLayer . culledTiles ;
1314 var length = renderTiles . length ;
14- var batch = renderer . spriteBatch ;
15- var texture = gameObject . tileset . image . get ( ) . source . glTexture ;
16- var textureWidth = texture . width ;
17- var textureHeight = texture . height ;
18- var tileset = this . tileset ;
19- var renderTarget = gameObject . renderTarget ;
20- var scrollFactorX = gameObject . scrollFactorX ;
21- var scrollFactorY = gameObject . scrollFactorY ;
22- var alpha = gameObject . alpha ;
23- var x = gameObject . x ;
24- var y = gameObject . y ;
25- var sx = gameObject . scaleX ;
26- var sy = gameObject . scaleY ;
15+ var texture = tilemapLayer . tileset . image . get ( ) . source . glTexture ;
16+ var tileset = tilemapLayer . tileset ;
17+ var scrollFactorX = tilemapLayer . scrollFactorX ;
18+ var scrollFactorY = tilemapLayer . scrollFactorY ;
19+ var alpha = tilemapLayer . alpha ;
20+ var x = tilemapLayer . x ;
21+ var y = tilemapLayer . y ;
22+ var sx = tilemapLayer . scaleX ;
23+ var sy = tilemapLayer . scaleY ;
24+ var getTint = Utils . getTintAppendFloatAlpha ;
25+ var pipeline = renderer . pipelines . TextureTintPipeline ;
2726
2827 for ( var index = 0 ; index < length ; ++ index )
2928 {
@@ -36,19 +35,22 @@ var DynamicTilemapLayerWebGLRenderer = function (renderer, gameObject, interpola
3635 var frameHeight = tile . height * ( tile . flipY ? - 1 : 1 ) ;
3736 var frameX = tileTexCoords . x + ( tile . flipX ? tile . width : 0 ) ;
3837 var frameY = tileTexCoords . y + ( tile . flipY ? tile . height : 0 ) ;
38+ var tint = getTint ( tile . tint , alpha * tile . alpha ) ;
3939
40- batch . addTileTextureRect (
40+ pipeline . batchTexture (
4141 texture ,
42- x + tile . pixelX * sx , y + tile . pixelY * sy ,
43- tile . width * sx , tile . height * sy ,
44- alpha * tile . alpha , tile . tint ,
42+ tile . pixelX , tile . pixelY ,
43+ tile . width , tile . height ,
44+ 1 , 1 ,
45+ 0 ,
46+ false , false ,
4547 scrollFactorX , scrollFactorY ,
46- textureWidth , textureHeight ,
48+ 0 , 0 ,
4749 frameX , frameY , frameWidth , frameHeight ,
48- camera ,
49- renderTarget
50+ tint , tint , tint , tint ,
51+ camera
5052 ) ;
51- }
53+ }
5254} ;
5355
5456module . exports = DynamicTilemapLayerWebGLRenderer ;
0 commit comments