@@ -7,35 +7,77 @@ Phaser.Renderer.WebGL.GameObjects.Image = {
77 render : function ( renderer , src )
88 {
99 var frame = src . frame ;
10+ var alpha = src . color . worldAlpha * 255 << 24 ;
1011
1112 // Skip rendering?
1213
13- if ( src . skipRender || ! src . visible || src . worldAlpha < = 0 || ! frame . cutWidth || ! frame . cutHeight )
14+ if ( src . skipRender || ! src . visible || alpha == = 0 || ! frame . cutWidth || ! frame . cutHeight )
1415 {
1516 return ;
1617 }
1718
19+ // The below works
20+
1821 var uvs = frame . uvs ;
1922 var verts = src . transform . glVertextData ;
2023 var index = src . glTextureIndex ;
21- var alpha = src . color . worldAlpha * 255 << 24 ;
2224 var tint = src . color . _glTint ;
2325 var bg = src . color . _glBg ;
2426
25- renderer . spriteBatch . render ( src ) ;
27+ renderer . spriteBatch . addToBatch ( src , verts , uvs , index , alpha , tint , bg ) ;
28+
29+ /*
30+
31+ // var verts = src.transform.cloneVertexData();
32+ var worldAlpha = 0.2;
33+
34+ // 0.2, 0.4, 0.6, 0.8, 1
35+
36+ // xy0 Top Left Vert
37+ // xy1 Top Right Vert
38+ // xy2 Bottom Right Vert
39+ // xy3 Bottom Left Vert
40+
41+ // Let's just try 5 clones below the current sprite?
42+
43+ verts.x0 += 8 * 5;
44+ verts.x1 += 8 * 5;
45+ verts.x2 += 8 * 5;
46+ verts.x3 += 8 * 5;
47+
48+ verts.y0 += 8 * 5;
49+ verts.y1 += 8 * 5;
50+ verts.y2 += 8 * 5;
51+ verts.y3 += 8 * 5;
52+
53+
54+ for (var i = 0; i < 5; i++)
55+ {
56+ alpha = worldAlpha * 255 << 24;
57+
58+ renderer.spriteBatch.addToBatch(src, verts, uvs, index, alpha, tint, bg);
59+
60+ verts.x0 -= 8;
61+ verts.x1 -= 8;
62+ verts.x2 -= 8;
63+ verts.x3 -= 8;
64+
65+ verts.y0 -= 8;
66+ verts.y1 -= 8;
67+ verts.y2 -= 8;
68+ verts.y3 -= 8;
69+
70+ worldAlpha += 0.2;
71+ }
72+ */
2673
27- // Several options open to us... we can either just call 'render' and it works out
28- // everything for us.
29- //
30- // Or we can call addVerts 4 times
31- //
32- // Or we can call addVerts and pass in objects, but call it as many times as we like
33- // so we can do special FX from it
74+ // Also works ...
3475
35- renderer . spriteBatch . addVert ( verts . x0 , verts . y0 , uvs . x0 , uvs . y0 , index , tint . topLeft + alpha , bg ) ;
36- renderer . spriteBatch . addVert ( verts . x1 , verts . y1 , uvs . x1 , uvs . y1 , index , tint . topRight + alpha , bg ) ;
37- renderer . spriteBatch . addVert ( verts . x2 , verts . y2 , uvs . x2 , uvs . y2 , index , tint . bottomRight + alpha , bg ) ;
38- renderer . spriteBatch . addVert ( verts . x3 , verts . y3 , uvs . x3 , uvs . y3 , index , tint . bottomLeft + alpha , bg ) ;
76+ // renderer.spriteBatch.startGameObject(src);
77+ // renderer.spriteBatch.addVert(verts.x0, verts.y0, uvs.x0, uvs.y0, index, tint.topLeft + alpha, bg);
78+ // renderer.spriteBatch.addVert(verts.x1, verts.y1, uvs.x1, uvs.y1, index, tint.topRight + alpha, bg);
79+ // renderer.spriteBatch.addVert(verts.x2, verts.y2, uvs.x2, uvs.y2, index, tint.bottomRight + alpha, bg);
80+ // renderer.spriteBatch.addVert(verts.x3, verts.y3, uvs.x3, uvs.y3, index, tint.bottomLeft + alpha, bg);
3981 }
4082
4183} ;
0 commit comments