Richard Davey
bdce1b255f
Update index.js
2022-09-08 21:36:28 +01:00
Richard Davey
bc7e5f9c79
Merge pull request #6196 from samme/feature/texture-add-remove-key-events
...
Add texture add/remove key events
2022-08-24 21:20:13 +01:00
samme
7824876bd7
Add texture add/remove key events
...
- Phaser.Textures.Events.ADD_KEY
- Phaser.Textures.Events.REMOVE_KEY
2022-08-24 10:13:58 -07:00
samme
01735b5a5c
Exclude __WHITE in getTextureKeys()
2022-08-23 10:38:51 -07:00
Richard Davey
0258714887
Update TextureManager.js
2022-08-19 16:44:55 +01:00
Richard Davey
7c4eff9251
The CanvasFeatures
tests and the TextureManager _tempContext
now specify the { willReadFrequently: true }
hint to inform the browser the canvas is to be read from, not composited.
2022-08-18 18:01:28 +01:00
Richard Davey
59fbcc5ca3
Updated copyright year
2022-02-28 14:29:51 +00:00
Richard Davey
a4308cfa3a
Skips Canvas drawImage calls if invalid frame sizes given. Fix #5951
2022-02-03 16:44:24 +00:00
Richard Davey
07f0bd4184
The JSON Hash and Array Texture Parsers will now throw a console.warn if the JSON is invalid and contains identically named frames.
2021-11-03 13:49:24 +00:00
Richard Davey
615321582f
Expose the parsers
2021-10-06 18:44:19 +01:00
Richard Davey
97be6a965d
Textures.Parsers.PVRParser
is a new parser for the PVR compression container format.
2021-10-06 18:44:13 +01:00
Richard Davey
94906435c2
Textures.Parsers.KTXParser
is a new parser for the KTX compression container format.
2021-10-06 18:44:03 +01:00
Richard Davey
e4bbc4dec7
TextureManager#addCompressedTexture
is a new method that will add a compressed texture, and optionally atlas data into the Texture Manager and return a Texture
object than any Sprite can use.
2021-10-06 18:43:20 +01:00
Richard Davey
3a6219914e
Now parses compressed textures and sets the algorithm property
2021-10-06 18:42:26 +01:00
Richard Davey
8752890c2c
Create MipmapType.js
2021-10-06 17:47:21 +01:00
Richard Davey
f2d21f26fd
Create CompressedTextureData.js
2021-10-06 17:47:16 +01:00
Richard Davey
a2428e1424
Create PVRParser.js
2021-10-05 18:30:24 +01:00
Richard Davey
6f9471f40d
Create KTXParser.js
2021-10-05 18:30:21 +01:00
samme
c9cbace6f2
Add texture key to the missing frame warning
2021-09-02 10:41:16 -07:00
Sebastian Fast
df9f367b95
#5689 moved _pending to beginning of function
2021-05-13 10:52:06 +02:00
Richard Davey
8a6a4a7219
If TextureSource.destroy
has a WebGL Texture it will tell the WebGL Renderer to reset the textures first, before deleting its texture.
2021-02-17 13:11:12 +00:00
Matt Jennings
d30c1682d2
check that renderer exists before accessing renderer.type ( fixes #5558 )
2021-02-11 15:43:16 -06:00
Richard Davey
b71bfcf7ba
The error RENDER WARNING: there is no texture bound to the unit ...
would be thrown when destroying a Text Game Object, or any Game Object that uses its own custom texture. Destroying such an object will now reset the WebGL Texture cache. Fix #5464
2021-01-04 15:51:14 +00:00
Richard Davey
abf90070ba
Update TextureManager.js
2020-11-26 11:24:32 +00:00
Richard Davey
417f7684c3
More integer to number changes
2020-11-23 10:32:00 +00:00
Richard Davey
02c34cd64e
Replace integer with number
2020-11-23 10:22:13 +00:00
Hexus
ef022cd3df
Implemented reading WebGL texture dimensions automatically when adding them to the TextureManager
2020-11-18 00:49:19 +00:00
Richard Davey
b278916b3e
No need to reset during destroy
2020-10-27 11:38:34 +00:00
Richard Davey
c8a99f00f2
Improved JSDocs
2020-10-03 10:15:19 +01:00
Richard Davey
e368c479a0
The TextureManager
now generates a new texture with the key __WHITE
durings its boot process. This is a pure white 4x4 texture used by the Graphics pipelines.
2020-09-14 14:54:58 +01:00
Richard Davey
80c571963c
Textures.Parsers.JSONHash
will now perform a hasOwnProperty
check when iterating the frames, skipping anything that isn't a direct property. This should allow you to use generated atlas data that comes from JSON.parse
. Fix #4768
2020-08-26 13:06:04 +01:00
Richard Davey
d98d305e2f
Frame.setUVs
is a new method that allows you to directly set the canvas and UV data for a frame. Use this if you need to override the values set automatically during frame creation.
2020-08-05 12:45:07 +01:00
Richard Davey
4baa0522b9
Bumping to 3.50
2020-07-31 13:41:29 +01:00
Richard Davey
556b5b05be
Update TextureSource.js
2020-07-23 16:23:14 +01:00
Richard Davey
fd305591ec
Added glIndex and glIndexCounter properties
2020-07-15 16:52:01 +01:00
samme
00d645e438
Print texture key in warning for zero frames
2020-05-08 10:31:20 -07:00
Richard Davey
19c53407e5
CanvasTexture.setSize
forgot to update the width
and height
properties of the Texture itself. These now match the underlying canvas element. Fix #5054
2020-04-27 15:19:00 +01:00
Richard Davey
f4efebfb64
Merge pull request #5103 from samme/docs/misc-6
...
Docs corrections
2020-04-27 10:01:33 +01:00
Richard Davey
6c47e3d9e1
Formatting fixes
2020-04-27 09:59:40 +01:00
Ben Randall
c4e9860c4b
Fixes to JSON texture parsers
...
Add support for anchors to JSON Hash
Accept pivot value from anchor property or pivot property.
2020-04-26 22:12:06 -07:00
samme
cfe501c338
Docs: correct type for CanvasTexture#getPixels
2020-04-21 11:05:16 -07:00
Richard Davey
3183f1e7de
Finished JSDocs
2020-02-04 17:16:19 +00:00
Richard Davey
8f52fe59bb
Completed JSDocs
2020-02-04 14:56:28 +00:00
Richard Davey
ff65e69cd1
Changed copyright date to 2020
2020-01-15 12:07:09 +00:00
J.C
8d259cd6c2
add missing parameters for addGLTexture
method for TS def
2019-10-23 17:45:48 +08:00
J.C
d56deef62b
undo brackets removal
2019-10-18 12:03:11 +08:00
J.C
87b54d2f4f
fixed a bug: in case if the environment does not support HTMLVideoElement.
2019-10-16 13:39:52 +08:00
J.C
96dbb3e11a
check to see if the environmet has video element
2019-10-15 15:24:36 +08:00
Richard Davey
9659ec2f47
Added flipY property and setFlipY method.
2019-10-10 12:26:25 +01:00
Richard Davey
69346bb1d3
TextureManager.get
can now accept either a string-based key, or a Texture instance, as its parameter.
2019-10-09 10:49:47 +01:00
Richard Davey
94e2ac4f79
Passes off creation to new videoToTexture method
2019-10-03 17:50:18 +01:00
Richard Davey
de1034091e
TextureSource.isVideo
is a new boolean property that is set when the Texture Source is backed by an HTML Video Element.
2019-10-03 02:28:47 +01:00
Richard Davey
342ad984ac
TextureSource.setFilter
will now set the scaleMode
to the given filter.
2019-10-01 14:42:30 +01:00
Richard Davey
a0292b5685
TextureSource.isGLTexture
now checks if the browser supports WebGLTexture
before checking to see if source is an instance of one. This should fix issues with Phaser in HEADLESS mode running under node / jsdom, or where WebGLTexture isn't present. Fix #4711
2019-10-01 13:46:37 +01:00
Richard Davey
d5cd37a9ac
Texture.remove
is a new method that allows you to remove a Frame from a Texture based on its name. Fix #4460
2019-08-07 13:03:00 +01:00
Richard Davey
6c04d99039
Frame.destroy
will now null the Frames reference to its parent texture, glTexture and clear the data and customData objects.
2019-08-07 12:59:23 +01:00
Richard Davey
87a685dccc
Calling CanvasTexture.update
will now automatically call refresh
if running under WebGL. This happens for both draw
and drawFrame
, meaning you no longer need to remember to call refresh
after drawing to a Canvas Texture in WebGL, keeping it consistent with the Canvas renderer.
2019-08-01 19:27:47 +01:00
Richard Davey
9e9d264973
getPixels defaults to 0x0
2019-07-21 16:18:21 +01:00
Richard Davey
7d2b34f8ed
Warn if invalid texture source
2019-07-15 15:42:25 +01:00
Richard Davey
a737cf0de5
Corrected manager type.
2019-07-13 10:50:06 +01:00
Richard Davey
d432a64576
CanvasTexture
has been added to the Textures
namespace so it can be created without needing to import it. The correct way to create a CanvasTexture
is via the Texture Manager, but you can now do it directly if required. Fix #4651
2019-07-13 10:49:05 +01:00
Richard Davey
4f87c7d441
Updated docs and frame source checks
2019-07-08 15:24:12 +01:00
Richard Davey
c33cf85456
Added isGLTexture property
2019-06-21 16:34:47 +01:00
Richard Davey
1e9ef314c9
Added addGLTexture
method to save WebGL Textures directly into the Texture Manager.
2019-06-21 16:10:26 +01:00
Richard Davey
b0b5f202fe
Fixed some jsdocs and added WebGLTexture support
2019-06-21 16:08:47 +01:00
Richard Davey
c91ed91ce3
License link update
2019-05-10 16:15:04 +01:00
Richard Davey
0d831ccf71
Texture Types
2019-05-09 12:38:45 +01:00
Richard Davey
f552dde229
Texture.add
will no longer let you add a frame to a texture with the same name or index as one that already exists in the texture. Doing so will now return null
instead of a Frame object, and the frameTotal
will never be incremented. Fix #4459
2019-04-08 14:22:03 +01:00
Richard Davey
56babb5841
Merge pull request #4089 from Cirras/texture-add-base-texture-fix
...
Make Texture.add() firstFrame check more explicit (Fix issue #4088 )
2019-04-08 12:03:17 +01:00
Richard Davey
8cb466b4e9
Clarified the important of the __BASE
frame in a Texture #4285
2019-04-08 11:54:47 +01:00
Richard Davey
73dc7899b9
Removed commented logs
2019-04-08 10:19:22 +01:00
Richard Davey
36b40db7f0
Merge pull request #4351 from Cirras/spritesheet-from-atlas-base-texture
...
Add __BASE texture entry in SpriteSheetFromAtlas parser
2019-04-08 10:17:23 +01:00
Richard Davey
382fed3de7
Added TextureManager.removeKey method and invoke it from Texture.destroy. Fix #4461
2019-04-06 11:35:58 +01:00
Richard Davey
ccf677dfa6
Textures typedefs
2019-02-13 15:43:08 +00:00
Richard Davey
70a87a576d
Some legacy instances of float
moved to number
.
2019-02-13 12:39:36 +00:00
Richard Davey
e7b1d086e7
Moving all of the typedefs to properly namespaced scopes, rather than globals
...
\o/ ~ "Someone, save me!"
2019-02-13 12:35:12 +00:00
Richard Davey
b50e1c78b5
Lots more jsdoc tweaks and improvements
2019-02-12 15:01:54 +00:00
Richard Davey
dc73993fe2
Added jsdoc version numbers
2019-02-12 12:22:25 +00:00
Richard Davey
ccaae460a4
Added jsdoc version numbers to each event
2019-02-12 11:37:58 +00:00
Cirras
9a38ddf7b8
Add __BASE texture entry to spritesheets created with SpriteSheetFromAtlas parser
2019-02-10 01:33:30 +11:00
Richard Davey
ac1b0d8d85
Added dirty rect arguments to putData method
2019-02-08 19:45:58 +00:00
Richard Davey
eb9ed3463f
Lots of namespace and jsdoc fixes
2019-02-01 18:02:58 +00:00
Richard Davey
1eccff1e3b
Fixed jsdoc links and markdown bullet lists
2019-01-18 15:20:56 +00:00
Richard Davey
bc962c25dc
All listeners use the new Events
2019-01-18 13:41:43 +00:00
Richard Davey
25c1a5fe74
Added Texture Manager Events and moved 'ready' responsibility to it
2019-01-17 11:54:41 +00:00
Richard Davey
aa341854c7
Happy New Year
2019-01-15 16:20:22 +00:00
Richard Davey
d9f0483437
JSDoc update.
2019-01-07 23:13:07 +00:00
jestarray
5aef34884c
texture optional frame parameters
...
not specifying frame works on said methods
2018-12-21 08:25:42 -08:00
Richard Davey
a2723249a3
CanvasTexture.destroy
is a new method that specifically handles the destruction of the CanvasTexture and all of its associated typed arrays. This prevents a memory leak when creating and destroying lots of RenderTextures (which are CanvasTexture backed). Fix #4239
2018-12-18 15:21:24 +00:00
Richard Davey
032c7bd405
Merge pull request #4227 from jcyuan/Branch_v3.15.1
...
TS definition improvements in doc for v3.15.1 release
2018-12-13 11:58:27 +00:00
J.C
b6c2934e65
doc improvement for typescript
2018-12-13 17:17:09 +08:00
J.C
a3d2ccf65c
doc improvement for typescript
2018-12-13 17:17:02 +08:00
Richard Davey
caad527b29
Added getData and putData methods.
2018-12-13 00:30:13 +00:00
Richard Davey
62b489ee04
Merge branch 'master' of https://github.com/photonstorm/phaser
2018-12-11 23:22:04 +00:00
Richard Davey
69e6643800
Added setPixel method.
2018-12-11 23:22:00 +00:00
Richard Davey
d9f89fbde1
Fixed lint error, added docs.
2018-12-11 09:31:56 +00:00
Richard Davey
c239700528
Added getIndex and getPixels methods.
2018-12-11 02:37:00 +00:00
Richard Davey
84bf2e5e93
lint fix
2018-12-08 14:59:07 +00:00
Richard Davey
c3524b345f
Added CanvasTexture.drawFrame method.
2018-12-08 13:10:55 +00:00
Richard Davey
7d34db2753
Added clear region arguments
2018-12-07 19:28:38 +00:00
Richard Davey
e9b22500c0
Merge pull request #4097 from Cirras/atlas-to-spritesheet-trimming
...
Improved trim handling for Spritesheets created from trimmed Texture Atlas Frames
2018-10-19 13:38:24 +01:00
Richard Davey
4c4421c47f
Docjam merge
2018-10-19 12:32:43 +01:00
Richard Davey
9dc53d1e5a
The WebGLRenderer method canvasToTexture
has a new optional argument noRepeat
which will stop it from using gl.REPEAT
entirely. This is now used by the Text object to avoid it potentially switching between a REPEAT and CLAMP texture, causing texture black-outs
2018-10-12 15:08:53 +01:00
Richard Davey
4b1c762296
Updated @memberOf to @memberof
2018-10-10 10:49:13 +01:00
Richard Davey
a9063604dc
Replace @readOnly with @readonly
2018-10-09 13:40:00 +01:00
Cirras
82da94bd46
Improved trim handling for Spritesheets created from trimmed Texture Atlases frames
...
Fixes issue #4096 .
2018-10-06 18:37:37 +10:00
Cirras
0d7d828311
Make Texture.add() firstFrame check more explicit
...
Fixes issue #4088 where a SpriteSheet created from a trimmed texture atlas frame returns the second frame when the first frame is requested.
2018-10-05 04:29:17 +10:00
Richard Davey
3944e580cc
Fixed an error in the batchSprite
methods in the Canvas and WebGL Renderers that would incorrectly set the frame dimensions on Sprites with the crop component. This was particularly noticeable on Sprites with trimmed animation frames
2018-09-27 16:49:52 +01:00
Richard Davey
d8fcde46c3
When using CanvasTexture.refresh
or Graphics.generateTexture
it would throw WebGL warnings like 'bindTexture: Attempt to bind a deleted texture'. This was due to the Frames losing sync with the glTexture reference used by their TextureSource. Fix #4050
2018-09-27 14:16:22 +01:00
Richard Davey
a17b0c2e6c
jsdoc fixes
2018-09-27 14:16:09 +01:00
Richard Davey
ab48c1c479
The Texture.getFramesFromTextureSource
method has a new boolean argument includeBase
, which defaults to false
and allows you to set if the base frame should be returned into the array or not.
...
The `Texture.getFramesFromTextureSource` method was returning an array of Frame names by mistake, instead of Frame references. It now returns the Frames themselves.
2018-09-27 14:11:14 +01:00
Richard Davey
855fde1adb
Rebind the source texture
2018-09-13 13:23:42 +01:00
Richard Davey
8ab3240656
Added jsdocs
2018-09-10 20:44:19 +01:00
Richard Davey
4ac490eac8
Added draw method
2018-09-08 01:19:25 +01:00
Richard Davey
9ec4b3433f
Updated CanvasTexture class
...
Fixed jsdoc names.
Added getPixels, imageData, array buffer and other pixel reading properties.
2018-09-07 19:29:58 +01:00
Richard Davey
57758942d1
Account for trim in pixel perfect hit tests. Fix #3938
2018-08-22 17:11:20 +01:00
Richard Davey
2dfe321d67
The getPixelAlpha
and getPixel
methods in the Texture Manager would allow x/y coordinates from outside the cut area of a frame. It now tests to ensure they're within the frame. Fix #3937
2018-08-21 23:25:08 +01:00
Richard Davey
50baa268e3
addBase64
will return intance for chaining
2018-08-07 16:26:15 +01:00
Richard Davey
fbb67ac201
The CanvasRenderer.DrawImage
function has been removed, as has the associated drawImage
property from the Canvas Renderer as they're no longer used.
2018-08-06 15:24:51 +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
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
217bfd2343
Sorting out frame access
2018-08-02 17:59:19 +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
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
73524df816
The Game boot event flow has changed slightly. The Game will now listen for a texturesready
event, which is dispatched by the Texture Manager when the default textures have finished processing. Upon receiving this, the Game will emit the ready
event, which all the other systems listen for and respond to. The difference is that the Renderer uses the texturesready
event to ensure that it is the first thing to be activated, before any other system.
2018-08-01 13:18:28 +01:00
Richard Davey
08b7d00ce9
Fixed base64 method
2018-07-27 11:19:12 +01:00
Richard Davey
c1111753f0
Added getBase64 method
2018-07-27 09:43:12 +01:00
Edwin222
a137883628
Merge remote-tracking branch 'upstream/master'
2018-07-14 17:00:38 +09:00
Richard Davey
e388b7dae5
Tidy up
2018-07-11 16:23:57 +01:00
Richard Davey
1a7d726a4b
jsdoc udpate
2018-07-11 12:33:40 +01:00
Andrew Groff
5c853c640f
Fixing code style and making console warning more concise
2018-07-08 15:12:02 -07:00
Andrew Groff
cca6dd605c
Adding console warning to notify users when their frame config does not create any frames
2018-07-08 03:22:04 -07:00
Richard Davey
6483cdacb5
Added canvas crop data
2018-07-06 15:34:12 +01:00
Richard Davey
dfebd940c2
Trim flip fixed and function tidied up
2018-07-06 12:33:39 +01:00
Richard Davey
4e1cbc01d8
Removed object creation
2018-07-06 12:22:05 +01:00
Richard Davey
cca6cd0b83
Fixed trimmed frame crop
2018-07-06 12:14:25 +01:00
Richard Davey
9ead9705c4
Preparing for trim crop support
2018-07-05 23:55:12 +01:00
Richard Davey
5063fe30e5
Fixed cropping when texture frame is flipped
2018-07-05 23:01:26 +01:00
Richard Davey
9bd8fb34a4
Changed canvasData to remove duplicate properties.
2018-07-04 17:01:29 +01:00
Richard Davey
43fc988034
Moved crop UV handler to the Frame method. Cleaner and easier.
2018-07-04 15:18:08 +01:00
Richard Davey
436d92831c
Added getCropUVs method
2018-07-03 16:47:53 +01:00
Richard Davey
c82c09914e
Updated UV values
2018-07-02 23:51:42 +01:00
Richard Davey
8a7ead03a8
Frame.glTexture
is a new property that maps to the WebGL Texture for the Frames Texture Source image. It's used internally by the renderer to avoid expensive object look-ups and is set automatically in the Frame
constructor.
2018-07-02 13:43:35 +01:00
Richard Davey
8c312090da
Solidified use of pixelArt mode
2018-06-27 15:27:16 +01:00
Richard Davey
7a23378015
Unified use of roundPixels, antialias and pixelArt modes
2018-06-27 15:15:00 +01:00
Edwin222
57f159c64b
Add description comments to TextureManager.js
2018-06-23 17:20:49 +09:00
Richard Davey
a49e770f89
Added getPixelAlpha method
2018-06-08 17:50:26 +01:00
Richard Davey
350cb037b7
All systems now register themselves with the new PluginCache
2018-05-15 12:51:50 +01:00