Commit graph

11900 commits

Author SHA1 Message Date
Richard Davey
6027e9ca5a Render Textures can now be cropped. Added missing jsdocs. 2018-08-03 19:30:55 +01:00
Richard Davey
d5c558b8e4 Render Texture now uses unified drawing functions 2018-08-03 19:17:39 +01:00
Richard Davey
c6cb0edf60 Updated log. 2018-08-03 19:17:17 +01:00
Richard Davey
82251cd85b Removed Matrix Stack. No longer needed. 2018-08-03 19:17:12 +01:00
Richard Davey
2ab24c49c4 Tile Sprites updated to use new internal canvas and support crop 2018-08-03 19:14:06 +01:00
Richard Davey
e91d95e107 Text updated to use proper texture frame and now supports crop 2018-08-03 19:07:12 +01:00
Richard Davey
177e47cb84 The Texture Manager has a new method called renameTexture which will let you rename a texture, changing the key to the new one given. All existing Game Objects will still maintain their reference, even after a rename. 2018-08-03 19:03:52 +01:00
Richard Davey
708a857a26 SetTransform is a new Canvas Renderer function that consolidates the process of preparing a Game Object for rendering, without actually rendering it. This is used internally by the Graphics and Bitmap Text classes. 2018-08-03 19:02:43 +01:00
Richard Davey
8ed749bcb1 Removed old scissor code 2018-08-03 18:57:03 +01:00
Richard Davey
ae46e11e35 Skip processing if no tiles 2018-08-03 18:56:52 +01:00
Richard Davey
e8e32ecf2c Swap look-up for direct reference 2018-08-03 18:56:12 +01:00
Richard Davey
0a35275c1a TransformMatrix.setToContext is a new method that will set the values from the Matrix to the given Canvas Rendering Context using setTransform rather than transform. 2018-08-03 18:55:33 +01:00
Richard Davey
22bc6d2a86 The batchTexture method in the Texture Tint Pipeline now supports cropped Game Objects and will adjust the drawn texture frame accordingly. 2018-08-03 18:54:48 +01:00
Richard Davey
ca68904953 The Canvas Renderer has a new batchSprite method that consolidates the process of drawing a texture-based Game Object to the canvas. It processes the alpha, blend mode and matrix calculations in a single function and now is used by nearly all Game Object canvas renderers. 2018-08-03 18:53:50 +01:00
Richard Davey
921cc738d9 Render Textures now use the frame source to store the glTexture in, not locally. 2018-08-03 18:51:07 +01:00
Richard Davey
c98f5edc23 Added resetCropObject method to cut down on duplicate code. 2018-08-03 18:50:36 +01:00
Richard Davey
b65cf0647b New Crop Game Object component. 2018-08-03 18:49:10 +01:00
Richard Davey
8c842f67de Phaser.Utils.String.UUID will return an RFC4122 complaint UUID as a string. This is used internally to avoid cache key conflicts, but is exposed for your own use as well. 2018-08-03 18:47:27 +01:00
Richard Davey
fc0dc13930 Removed use of currentBlendMode and currentAlpha 2018-08-03 01:53:51 +01:00
Richard Davey
9f44896a3f The Blend Mode is now set directly in all Canvas Renderers without comparing it to what's stored in the Canvas Renderer. This fixes problems where the blend mode would be lost between two different Game Objects because they restored the context, but didn't update the renderer flag. Game Objects in Canvas can now mix and match blend modes across the display list. 2018-08-03 01:29:18 +01:00
Richard Davey
e0918df6b0 Canvas particle renderer now using same matrix math as webgl 2018-08-03 01:04:46 +01:00
Richard Davey
0a035353fa lint fix 2018-08-03 01:04:25 +01:00
Richard Davey
70b234952a Updated the canvas tilemap layer renderers to support parent matrix and tidied up the internal flow 2018-08-03 00:50:45 +01:00
Richard Davey
6ef7033b44 Added in parent matrix support and refactored the drawing 2018-08-03 00:42:27 +01:00
Richard Davey
31421ee00a The CullTiles updates from 3.11 didn't factor in the position of the Tilemap Layer to its bounds calculations, causing Static layers displayed out of the Camera viewport to never render in Canvas mode. The method has also been optimized further, with less divisions and less checks if culling is disabled. 2018-08-03 00:40:56 +01:00
Richard Davey
1b5f084640 Added jsdoc 2018-08-03 00:34:21 +01:00
Richard Davey
eff01adbc9 Added divide argument to the Snap methods. 2018-08-03 00:34:11 +01:00
Richard Davey
318cc87e59 Use proper matrix for static layer, so we can do fun things with Render Textures 2018-08-02 22:15:08 +01:00
Richard Davey
8135b687fb Added all the missing cull methods and properties into the Static Tilemap Layer, which is used by the Canvas Renderer 2018-08-02 22:14:51 +01:00
Richard Davey
f1d3412c38 Corrected data types 2018-08-02 22:14:32 +01:00
Richard Davey
66f6f9abc1 Removed un-used matrix 2018-08-02 22:14:23 +01:00
Richard Davey
0967bfcab4 Should use currentContext, not gameContext 2018-08-02 17:59:30 +01:00
Richard Davey
217bfd2343 Sorting out frame access 2018-08-02 17:59:19 +01:00
Richard Davey
96509e4ca4 Tidying p 2018-08-02 17:59:11 +01:00
Richard Davey
2a8dbb0c42 Removed un-used vars 2018-08-02 17:33:01 +01:00
Richard Davey
9ccb594958 Fixed Graphics Canvas Renderer so it uses the matrix values properly. 2018-08-02 17:24:29 +01:00
Richard Davey
c4c8b9e6ea Added copyToContext method 2018-08-02 17:23:52 +01:00
Richard Davey
674fc487ec Added missing commands 2018-08-02 17:03:41 +01:00
Richard Davey
20b74e746a Fixed parent order 2018-08-02 16:19:14 +01:00
Richard Davey
2a66e01577 Added source property so we can purge TSs based on origin 2018-08-02 16:16:46 +01:00
Richard Davey
7965c7aae4 Removed un-needed files. 2018-08-02 15:59:29 +01:00
Richard Davey
51163e6d4e If you set window.FORCE_WEBGL or window.FORCE_CANVAS in the window in which the Phaser game is loaded it will over-ride the renderer type setting in your game config, and force either WebGL or Canvas. This is handy for quickly testing the differences between renderers without having to do a new build each time. 2018-08-02 15:58:36 +01:00
Richard Davey
b83c8cf513 Merged all the functions into the single class and tidied up the naming. 2018-08-02 14:58:09 +01:00
Richard Davey
286f36cd1e Added ability for the Canvas Renderer to change context. 2018-08-02 14:57:37 +01:00
Richard Davey
122e6cab8a Fixed frame var 2018-08-02 12:35:26 +01:00
Richard Davey
affe47714f Render Textures can now save themselves to the Texture Manager. 2018-08-02 12:35:17 +01:00
Richard Davey
7566236d9b Added isRenderTexture property. 2018-08-02 12:34:57 +01:00
Richard Davey
261cb79d0d Added addRenderTexture method. 2018-08-02 12:34:01 +01:00
Richard Davey
3efc800bf7 Use global string to cut down on size a little. 2018-08-02 12:33:48 +01:00
Richard Davey
72d54dd1ac Only clear if dirty. Only render children is visible. 2018-08-01 20:25:55 +01:00