photonstorm
f34b567295
BitmapData.copy, and by extension any method that uses it, including BitmapData.draw, drawGroup and drawFull, now all support drawing RenderTexture objects. These can either be passed directly, or be the textures of Sprites, such as from a call to generateTexture.
2016-05-12 03:48:14 +01:00
photonstorm
1d18c70371
BitmapData.drawGroupProxy is now capable of iterating through Sprites that have children, and also now uses the world positions for drawing instead.
2016-05-11 16:38:42 +01:00
photonstorm
c33b53fa95
BitmapData has a new property frameData
which is a Phaser.FrameData container instance. It contains a single Frame by default, matching the dimensions of the entire BitmapData, but can be populated with additional frames should you wish to create animations from dynamic BitmapData textures.
2016-04-06 00:43:21 +01:00
photonstorm
bc4b828b51
BitmapData.copy, and by extension draw, drawFull, drawGroup, etc, would incorrectly handle drawing a tinted Sprite if it was using a frame from a texture atlas (thanks @PhaserDebugger #2405 )
2016-04-04 22:53:13 +01:00
photonstorm
f40cfbe2ae
2015 - 2016.
2016-04-04 22:16:16 +01:00
photonstorm
17071b578c
BaseTexture.destroy wasn't correctly removing the texture from the BaseTextureCache if it was a cached CanvasPool entry (such as Text objects use), causing drawImage errors in Canvas mode, and just blank textures in WebGL (thanks @civet #2339 )
2016-02-18 12:59:40 +00:00
Richard Davey
a4c5fb9660
BitmapData.drawGroup can now handle drawing Emitters and BitmapText objects that are part of the Group.
2016-02-03 23:08:54 +00:00
Richard Davey
8043d29aa6
BitmapData would always create a private _swapCanvas
which was a clone of its main canvas used for advanced movement operations. This no longer happens. The swap canvas is created only as needed, by those functions that use it (specifically moveH
and moveV
), meaning a BitmapData will now use half the amount of memory it used to, and you'll have half the amount of canvas DOM elements created (unless you make heavy use of the move functions).
2016-02-03 11:41:37 +00:00
Richard Davey
bceca55c8f
Merge pull request #2222 from FracturedShader/patch-2
...
Update BitmapData.shiftHSL, limitValue -> clamp
2016-02-02 02:31:54 +02:00
Richard Davey
e551254b52
Merge pull request #2209 from FracturedShader/patch-1
...
Update BitmapData.setHSL to accept 0
2016-02-01 18:57:29 +02:00
Richard Davey
76e2dc66ee
Fixed docs ( #2216 )
2016-02-01 16:42:03 +00:00
Robert Plante
8f1450ecca
Update to BitmapData.setHSL to follow conventions
2015-11-23 12:46:12 -05:00
Robert Plante
45195848bc
Update BitmapData.shiftHSL, limitValue -> clamp
...
`math.limitValue` does not exist so it was changed to `math.clamp` which provides the desired functionality.
2015-11-17 15:34:42 -05:00
Robert Plante
e236cac1e6
Update setHSL
...
Checking `if (h)` yields `false` when `h = 0`, but 0 is an acceptable value here. Had to decide between caching HSL verification and doing `typeof` 3x/pixel and opted for the temporary variables.
2015-11-17 14:15:26 -05:00
photonstorm
609b38c6e1
BitmapData.update causes a snowballing memory leak under WebGL due to a Context.getImageData call. BitmapData.clear used to call update automatically but no longer does. This resolves the issue of the Debug class causing excessive memory build-up in Chrome. Firefox and IE were unaffected (thanks @kingjerod #2208 )
2015-11-17 14:07:56 +00:00
Richard Davey
8899eddd9a
BitmapData.clear now automatically calls BitmapData.update at the end of it.
2015-09-29 14:02:26 +01:00
Richard Davey
d7a42370a4
BitmapData.move, moveH and moveV have a new optional wrap
argument allowing you to control if the contents of the BitmapData are wrapped around the edges (true) or simply scrolled off (false).
2015-09-07 01:16:43 +01:00
photonstorm
4fa1ffb4cf
JSDocs update.
2015-08-20 12:47:59 +01:00
Richard Davey
994a7dae73
jsdoc fix #2013
2015-08-19 22:19:55 +01:00
photonstorm
103c37cd42
BitmapData.drawFull draws the given Game Object or Group to a BitmapData and then recursively iterates through all of its children, including children of Game Objects and Groups. It can draw Text, BitmapText, Sprites, Images, Emitters and Graphics objects. It's perfectly valid to pass in game.world
as the parent object, and it will iterate through the entire display list.
2015-08-19 14:19:26 +01:00
Richard Davey
7fbeb1c062
BitmapData.line draws a line to the BitmapData in the color and thickness specified.
...
Lots of BitmapData updates to use local vars and 'op' property, cutting down code size.
2015-08-07 02:48:00 +01:00
Richard Davey
62c87052cb
Merge pull request #1985 from yahiko00/master
...
Extra documentation and TypeScript definition file update
2015-08-06 14:20:26 +01:00
Yahiko Uzumaki
0416c6a9ee
Update BitmapData.js
...
Fix explanation.
2015-08-06 13:57:43 +02:00
yahiko
d412431947
Add extra information for the imageData property.
2015-08-06 13:49:51 +02:00
photonstorm
e901fb80f6
Merging in the CanvasPool changes to the core.
2015-08-03 14:46:55 +01:00
photonstorm
ffaa7d711f
Removed BaseTextureCache requirement from BitmapData.
...
Fixed jshint.
Updated TS defs.
2015-07-22 13:23:40 +01:00
photonstorm
f15fe6706c
All undefined argument checks were changed from if (typeof x === 'undefined')
to if (x === undefined)
removing the typeof check and saving some bytes across the codebase in the process.
2015-07-22 10:37:15 +01:00
photonstorm
5ad3698703
BitmapData.clear has 4 new optional parameters: x, y, width and height, that define the area to be cleared. If left undefined it works exactly the same as before and clears the entire canvas.
2015-07-09 11:44:21 +01:00
Richard Davey
d027bf8ba7
BitmapData.generateTexture will take a snapshot of the BitmapDatas canvas at that moment in time and convert it into an Image, which is then stored in the Phaser image Cache based on the key given. You can then use the new texture for any future sprites or texture based objects.
2015-07-09 00:19:07 +01:00
Richard Davey
86cac2085c
BitmapData.move(x, y) allows you to shift the contents of the BitmapData horizontally and vertically by the given amounts. The image wraps-around the edges of the BitmapData.
...
BitmapData.moveH(distance) allows you to horizontally shift the BitmapData with wrap-around the edges.
BitmapData.moveV(distance) allows you to vertically shift the BitmapData with wrap-around the edges.
2015-07-08 04:26:28 +01:00
photonstorm
855831e4c2
BitmapData.update now validates the width
and height
values to ensure they aren't lower than 1, which would previously cause a context error.
2015-05-08 01:49:59 +01:00
photonstorm
af66b49f31
If a BitmapData is created with a width or height set to zero then the width and/or height are set to a default value (256) instead to avoid getContext errors.
2015-05-06 16:50:10 +01:00
photonstorm
3578cd097c
jsdocs fix.
2015-05-03 13:53:02 +01:00
photonstorm
b0e1b8facb
jsdoc fixes.
2015-04-15 01:36:25 +01:00
photonstorm
36c064511c
Added guards around context.getImageData
calls in BitmapData, Text and Canvas Tinting classes to avoid crashing restricted browsers like Epic Browser. Please understand that several Phaser features won't work correctly with this browser (thanks @Erik3000 #1714 )
2015-04-02 14:47:44 +01:00
Paul
4de95c09b5
Component documentation
...
- Required changes for documentation to show up correctly
- Uses multiple @extends, which currently [mostly] works in jsdoc
and like closure compiler
2015-02-28 23:00:17 -08:00
photonstorm
a69e53f901
Copyright date change.
2015-02-25 03:36:23 +00:00
photonstorm
a67d2df6f0
BitmapData.text will render the given string to the BitmapData, with optional font, color and shadow settings.
2015-01-18 12:24:00 +00:00
photonstorm
741131312a
BitmapData.drawGroup draws the immediate children of a Phaser.Group to a BitmapData. Children are only drawn if they have their exists
property set to true
. The children will be drawn at their x
and y
world space coordinates. When drawing it will take into account the child's rotation, scale and alpha values. No iteration takes place. Groups nested inside other Groups will not be iterated through.
...
BitmapData.copy `tx` parameter if `null` and `source` is a Display Object, it will default to `source.x`.
BitmapData.copy `ty` parameter if `null` and `source` is a Display Object, it will default to `source.y`.
2015-01-05 14:28:16 +00:00
Paul
dab8772de0
Documentation - consistency updates
...
- Updated `readOnly` doclet to `readonly`
- `array` refined to `type[]`, where such information was immediately
determinable.
- Updated {Any}/{*} to {any}; {...*} is standard exception
- Udated {Object} to {object}
2014-11-30 04:03:35 -08:00
photonstorm
d5dfa464c0
Added alpha setting to getContext.
2014-11-29 19:40:50 +00:00
photonstorm
96fd0ade74
JSDoc fixes.
2014-10-21 22:43:42 +01:00
photonstorm
c960ab5d44
Typo fix.
2014-10-17 17:07:43 +01:00
photonstorm
4f1ba99120
BitmapData.getFirstPixel will scan the BitmapData and return the color and location of the first non-transparent pixel encountered. You can specify one of 4 scan directions: top to bottom, bottom to top, left to right and right to left.
...
BitmapData.getBounds will return a `Rectangle` object that encompasses the full extent of the non-transparent pixels in the BitmapData. This can be useful if you wish to trim away transparent pixels from the sides of a BitmapData down to size before saving.
2014-10-17 16:51:50 +01:00
photonstorm
d206dd0dad
Updates for Pixi v2
2014-10-13 12:20:25 +01:00
photonstorm
ac27f12c95
Fixes for Pixi update WebGL UV calls.
2014-10-11 04:18:42 +01:00
photonstorm
08c6106c35
Fixed issue with textureLine creating white blocks in iOS.
2014-10-09 02:30:31 +01:00
photonstorm
ff034b5077
Fixed textureLine and added repeat parameter.
2014-10-03 03:57:49 +01:00
photonstorm
ab78710daa
BitmapData.textureLine takes a Phaser.Line object and an image in the image cache. It then accurately draws the image as a repeating texture for the full length of the line.
2014-10-03 02:21:09 +01:00
photonstorm
d65c526184
Cache.addBitmapData has a new parameter: frameData
allowing you to pass a Phaser.FrameData
object along with the BitmapData.
...
Cache.getFrameData has a new parameter: `map` which allows you to specify which cache to get the FrameData from, i.e. `Phaser.Cache.IMAGE` or `Phaser.Cache.BITMAPDATA`.
Sprite.loadTexture if given a BitmapData as the texture will now query the cache to see if it has any associated FrameData, and if so it will load that into the AnimationManager.
2014-10-01 03:10:13 +01:00