Skip to main content
Version: Phaser v4.0.0

TextureManager

When Phaser boots it will create an instance of this Texture Manager class.

It is a global manager that handles all textures in your game. You can access it from within a Scene via the this.textures property.

Its role is as a manager for all textures that your game uses. It can create, update and remove textures globally, as well as parse texture data from external files, such as sprite sheets and texture atlases.

Sprites and other texture-based Game Objects get their texture data directly from this class.

Constructor

new TextureManager(game)

Parameters

nametypeoptionaldescription
gamePhaser.GameNoThe Phaser.Game instance this Texture Manager belongs to.

Scope: static

Extends

Phaser.Events.EventEmitter

Source: src/textures/TextureManager.js#L33
Since: 3.0.0

Public Members

game

game: Phaser.Game

Description:

The Game that the Texture Manager belongs to.

A game will only ever have one instance of a Texture Manager.

Source: src/textures/TextureManager.js#L64
Since: 3.0.0


list

list: object

Description:

This object contains all Textures that belong to this Texture Manager.

Textures are identified by string-based keys, which are used as the property within this object. Therefore, you can access any texture directly from this object without any iteration.

You should not typically modify this object directly, but instead use the methods provided by the Texture Manager to add and remove entries from it.

Source: src/textures/TextureManager.js#L85
Since: 3.0.0


name

name: string

Description:

The internal name of this manager.

Source: src/textures/TextureManager.js#L75
Since: 3.0.0


silentWarnings

silentWarnings: boolean

Description:

If this flag is true then the Texture Manager will never emit any warnings to the console log that report missing textures.

Source: src/textures/TextureManager.js#L174
Since: 3.60.0


stamp

stamp: Phaser.GameObjects.Stamp

Description:

An Image Game Object that belongs to this Texture Manager.

Used as a drawing stamp within Dynamic Textures.

This is not part of the display list and doesn't render.

Prior to v4.0.0, this was of the type Phaser.GameObjects.Image.

Source: src/textures/TextureManager.js#L135
Since: 3.60.0


stampCrop

stampCrop: Phaser.Geom.Rectangle

Description:

The crop Rectangle as used by the Stamp when it needs to crop itself.

Source: src/textures/TextureManager.js#L151
Since: 3.60.0


tileSprite

tileSprite: Phaser.GameObjects.TileSprite

Description:

A TileSprite Game Object that belongs to this Texture Manager.

Used for repeated drawing within Dynamic Textures.

This is not part of the display list and doesn't render.

Source: src/textures/TextureManager.js#L160
Since: 4.0.0


Inherited Methods

From Phaser.Events.EventEmitter:


Public Methods

addAtlas

<instance> addAtlas(key, source, data, [dataSource])

Description:

Adds a Texture Atlas to this Texture Manager.

In Phaser terminology, a Texture Atlas is a combination of an atlas image and a data file describing the frames within it, such as those exported by applications like Texture Packer.

This method accepts three different atlas data formats:

  • JSON Array — the frames or textures field is an Array. Used by Texture Packer's

    "JSON Array" and "Phaser (multi-atlas)" exports. Dispatched to addAtlasJSONArray.

  • JSON Hash — the frames field is an Object. Used by Texture Packer's "JSON Hash" export.

    Dispatched to addAtlasJSONHash.

  • Phaser Compact Texture (PCT) — a decoded PCT data object with a pages array. This is

    the compact line-oriented format loaded by LoaderPlugin#atlasPCT. Dispatched to addAtlasPCT.

The format is detected automatically from the shape of the data argument. As of Phaser 3.60 you can use this method to add an atlas data set to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElement | Array.<HTMLImageElement>Phaser.Textures.TextureNo
dataobject | Array.<object>NoThe Texture Atlas data/s.
dataSourceHTMLImageElement | HTMLCanvasElementArray.<HTMLImageElement>Array.<HTMLCanvasElement>

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Source: src/textures/TextureManager.js#L763
Since: 3.0.0


addAtlasJSONArray

<instance> addAtlasJSONArray(key, source, data, [dataSource])

Description:

Adds a Texture Atlas to this Texture Manager.

In Phaser terminology, a Texture Atlas is a combination of an atlas image and a JSON data file, such as those exported by applications like Texture Packer.

The frame data of the atlas must be stored in an Array within the JSON.

This is known as a JSON Array in software such as Texture Packer.

As of Phaser 3.60 you can use this method to add an atlas data set to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElement | Array.<HTMLImageElement>Phaser.Textures.TextureNo
dataobject | Array.<object>NoThe Texture Atlas data/s.
dataSourceHTMLImageElement | HTMLCanvasElementArray.<HTMLImageElement>Array.<HTMLCanvasElement>

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L810
Since: 3.0.0


addAtlasJSONHash

<instance> addAtlasJSONHash(key, source, data, [dataSource])

Description:

Adds a Texture Atlas to this Texture Manager.

In Phaser terminology, a Texture Atlas is a combination of an atlas image and a JSON data file, such as those exported by applications like Texture Packer.

The frame data of the atlas must be stored in an Object within the JSON.

This is known as a JSON Hash in software such as Texture Packer.

As of Phaser 3.60 you can use this method to add an atlas data set to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElement | Array.<HTMLImageElement>Phaser.Textures.TextureNo
dataobject | Array.<object>NoThe Texture Atlas data/s.
dataSourceHTMLImageElement | HTMLCanvasElementArray.<HTMLImageElement>Array.<HTMLCanvasElement>

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L879
Since: 3.0.0


addAtlasPCT

<instance> addAtlasPCT(key, source, data, [dataSource])

Description:

Adds a Phaser Compact Texture Atlas (PCT) to this Texture Manager.

PCT is a compact line-oriented atlas format. A single PCT file can describe multiple atlas pages, each referencing a separate texture image. The data argument must be a decoded PCT structure as produced by Phaser.Textures.Parsers.PCTDecode — that is, an object containing pages, folders, and frames fields. The source argument should be a single Image or an Array of Images, one per page, in the same order as the pages field on the decoded data.

You do not normally need to call this method directly. It is called automatically when the LoaderPlugin#atlasPCT method finishes loading a PCT file. You can also use this method to add a decoded PCT data set to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElement | Array.<HTMLImageElement>Phaser.Textures.TextureNo
dataobjectNoThe decoded PCT data object.
dataSourceHTMLImageElement | HTMLCanvasElementArray.<HTMLImageElement>Array.<HTMLCanvasElement>

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L942
Since: 4.0.0


addAtlasXML

<instance> addAtlasXML(key, source, data, [dataSource])

Description:

Adds a Texture Atlas to this Texture Manager.

In Phaser terminology, a Texture Atlas is a combination of an atlas image and a data file, such as those exported by applications like Texture Packer.

The frame data of the atlas must be stored in an XML file.

As of Phaser 3.60 you can use this method to add an atlas data set to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElement | Phaser.Textures.TextureNoThe source Image element, or a Phaser Texture.
dataobjectNoThe Texture Atlas XML data.
dataSourceHTMLImageElement | HTMLCanvasElementArray.<HTMLImageElement>Array.<HTMLCanvasElement>

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L996
Since: 3.7.0


addBase64

<instance> addBase64(key, data)

Description:

Adds a new Texture to the Texture Manager created from the given Base64 encoded data.

It works by creating an Image DOM object, then setting the src attribute to the given base64 encoded data. As a result, the process is asynchronous by its nature, so be sure to listen for the events this method dispatches before using the texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
data*NoThe Base64 encoded data.

Returns: Phaser.Textures.TextureManager - This Texture Manager instance.

Fires: Phaser.Textures.Events#event:ADD, Phaser.Textures.Events#event:ERROR, Phaser.Textures.Events#event:LOAD

Source: src/textures/TextureManager.js#L352
Since: 3.0.0


addCanvas

<instance> addCanvas(key, source, [skipCache])

Description:

Creates a new Canvas Texture object from an existing Canvas element and adds it to this Texture Manager, unless skipCache is true.

Parameters:

nametypeoptionaldefaultdescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLCanvasElementNoThe Canvas element to form the base of the new Texture.
skipCachebooleanYesfalseSkip adding this Texture into the Cache?

Returns: Phaser.Textures.CanvasTexture - The Canvas Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L667
Since: 3.0.0


addCompressedTexture

<instance> addCompressedTexture(key, textureData, [atlasData])

Description:

Adds a Compressed Texture to this Texture Manager.

The texture should typically have been loaded via the CompressedTextureFile loader, in order to prepare the correct data object this method requires.

You can optionally also pass atlas data to this method, in which case a texture atlas will be generated from the given compressed texture, combined with the atlas data.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
textureDataPhaser.Types.Textures.CompressedTextureDataNoThe Compressed Texture data object.
atlasDataobjectYesOptional Texture Atlas data.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L545
Since: 3.60.0


addDynamicTexture

<instance> addDynamicTexture(key, [width], [height], [forceEven])

Description:

Creates a Dynamic Texture instance and adds itself to this Texture Manager.

A Dynamic Texture is a special texture that allows you to draw textures, frames and most kind of Game Objects directly to it.

You can take many complex objects and draw them to this one texture, which can then be used as the base texture for other Game Objects, such as Sprites. Should you then update this texture, all Game Objects using it will instantly be updated as well, reflecting the changes immediately.

It's a powerful way to generate dynamic textures at run-time that are WebGL friendly and don't invoke expensive GPU uploads on each change.

See the methods available on the DynamicTexture class for more details.

Optionally, you can also pass a Dynamic Texture instance to this method to have it added to the Texture Manager.

Parameters:

nametypeoptionaldefaultdescription
keystring | Phaser.Textures.DynamicTextureNoThe string-based key of this Texture. Must be unique within the Texture Manager. Or, a DynamicTexture instance.
widthnumberYes256The width of this Dynamic Texture in pixels. Defaults to 256 x 256. Ignored if an instance is passed as the key.
heightnumberYes256The height of this Dynamic Texture in pixels. Defaults to 256 x 256. Ignored if an instance is passed as the key.
forceEvenbooleanYestrueIf the width and height are odd numbers, should they be forced to be even? Ignored if an instance is passed as the key.

Returns: Phaser.Textures.DynamicTexture - The Dynamic Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L704
Since: 3.60.0


addFlatColor

<instance> addFlatColor(key, width, height, [color], [alpha])

Description:

Creates a texture from a color and alpha. The texture will be filled with the given color and alpha.

This may be used as a proxy texture, which can later be replaced with a real texture. See Phaser.Textures.Texture#setSource for more information on replacing the proxy with a real texture.

This is only available in WebGL mode.

Tags:

  • webglonly

Parameters:

nametypeoptionaldefaultdescription
keystringNoThe unique string-based key of the Texture.
widthnumberNoThe width of the texture.
heightnumberNoThe height of the texture.
colornumberYes"0x000000"The color of the texture.
alphanumberYes0The alpha of the texture.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use or the width or height is not positive.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L1250
Since: 4.0.0


addGLTexture

<instance> addGLTexture(key, glTexture)

Description:

Takes a WebGLTextureWrapper and creates a Phaser Texture from it, which is added to the Texture Manager using the given key.

This allows you to then use the Texture as a normal texture for texture based Game Objects like Sprites.

This is a WebGL only feature.

Prior to Phaser 3.80.0, this method took a bare WebGLTexture as the glTexture parameter. You must now wrap the WebGLTexture in a WebGLTextureWrapper instance before passing it to this method.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
glTexturePhaser.Renderer.WebGL.Wrappers.WebGLTextureWrapperNoThe source Render Texture.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L505
Since: 3.19.0


addImage

<instance> addImage(key, source, [dataSource])

Description:

Adds a new Texture to the Texture Manager created from the given Image element.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElementNoThe source Image element.
dataSourceHTMLImageElement | HTMLCanvasElementYesAn optional data Image element.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L470
Since: 3.0.0


addRenderTexture

<instance> addRenderTexture(key, renderTexture)

Description:

Adds a Render Texture to the Texture Manager using the given key. This allows you to then use the Render Texture as a normal texture for texture based Game Objects like Sprites.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
renderTexturePhaser.GameObjects.RenderTextureNoThe source Render Texture.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L607
Since: 3.12.0


addSpriteSheet

<instance> addSpriteSheet(key, source, config, [dataSource])

Description:

Adds a Sprite Sheet to this Texture Manager.

In Phaser terminology a Sprite Sheet is a texture containing different frames, but each frame is the exact same size and cannot be trimmed or rotated. This is different to a Texture Atlas, created by tools such as Texture Packer, and more akin with the fixed-frame exports you get from apps like Aseprite or old arcade games.

As of Phaser 3.60 you can use this method to add a sprite sheet to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture. Give an empty string if you provide a Phaser Texture as the 2nd argument.
sourceHTMLImageElement | Phaser.Textures.TextureNoThe source Image element, or a Phaser Texture.
configPhaser.Types.Textures.SpriteSheetConfigNoThe configuration object for this Sprite Sheet.
dataSourceHTMLImageElement | HTMLCanvasElementYesAn optional data Image element.

Returns: Phaser.Textures.Texture - The Texture that was created or updated, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L1098
Since: 3.0.0


addSpriteSheetFromAtlas

<instance> addSpriteSheetFromAtlas(key, config)

Description:

Adds a Sprite Sheet to this Texture Manager, where the Sprite Sheet exists as a Frame within a Texture Atlas.

In Phaser terminology a Sprite Sheet is a texture containing different frames, but each frame is the exact same size and cannot be trimmed or rotated.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
configPhaser.Types.Textures.SpriteSheetFromAtlasConfigNoThe configuration object for this Sprite Sheet.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L1152
Since: 3.0.0


addUint8Array

<instance> addUint8Array(key, data, width, height)

Description:

Creates a texture from an array of colour data.

This is only available in WebGL mode.

If the dimensions provided are powers of two, the resulting texture will be automatically set to wrap by the WebGL Renderer.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
dataUint8ArrayNoThe color data for the texture.
widthnumberNoThe width of the texture.
heightnumberNoThe height of the texture.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L1211
Since: 3.80.0


addUnityAtlas

<instance> addUnityAtlas(key, source, data, [dataSource])

Description:

Adds a Unity Texture Atlas to this Texture Manager.

In Phaser terminology, a Texture Atlas is a combination of an atlas image and a data file, such as those exported by applications like Texture Packer or Unity.

The frame data of the atlas must be stored in a Unity YAML file.

As of Phaser 3.60 you can use this method to add an atlas data set to an existing Phaser Texture.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourceHTMLImageElementNoThe source Image element.
dataobjectNoThe Texture Atlas data.
dataSourceHTMLImageElement | HTMLCanvasElementArray.<HTMLImageElement>Array.<HTMLCanvasElement>

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Fires: Phaser.Textures.Events#event:ADD

Source: src/textures/TextureManager.js#L1047
Since: 3.0.0


checkKey

<instance> checkKey(key)

Description:

Checks the given texture key and logs a console.error if the key is already in use, then returns false.

If you wish to avoid the console.warn then use TextureManager.exists instead.

Parameters:

nametypeoptionaldescription
keystringNoThe texture key to check.

Returns: boolean - true if it's safe to use the texture key, otherwise false.

Source: src/textures/TextureManager.js#L254
Since: 3.7.0


cloneFrame

<instance> cloneFrame(key, frame)

Description:

Takes a Texture key and Frame name and returns a clone of that Frame if found.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
framestring | numberNoThe string or index of the Frame to be cloned.

Returns: Phaser.Textures.Frame - A Clone of the given Frame.

Source: src/textures/TextureManager.js#L1385
Since: 3.0.0


create

<instance> create(key, source, [width], [height])

Description:

Creates a new Texture using the given source and dimensions.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
sourcePhaser.Types.Textures.TextureSource | Array.<Phaser.Types.Textures.TextureSource>NoA source or array of sources that are used to create the texture. Usually Images, but can also be a Canvas or other types.
widthnumberYesThe width of the Texture. This is optional and automatically derived from the source images.
heightnumberYesThe height of the Texture. This is optional and automatically derived from the source images.

Returns: Phaser.Textures.Texture - The Texture that was created, or null if the key is already in use.

Source: src/textures/TextureManager.js#L1303
Since: 3.0.0


createCanvas

<instance> createCanvas(key, [width], [height])

Description:

Creates a new Texture using a blank Canvas element of the size given.

Canvas elements are automatically pooled and calling this method will extract a free canvas from the CanvasPool, or create one if none are available.

Parameters:

nametypeoptionaldefaultdescription
keystringNoThe unique string-based key of the Texture.
widthnumberYes256The width of the Canvas element.
heightnumberYes256The height of the Canvas element.

Returns: Phaser.Textures.CanvasTexture - The Canvas Texture that was created, or null if the key is already in use.

Source: src/textures/TextureManager.js#L637
Since: 3.0.0


destroy

<instance> destroy()

Description:

Destroys the Texture Manager and all Textures stored within it.

Overrides: Phaser.Events.EventEmitter#destroy

Source: src/textures/TextureManager.js#L1744
Since: 3.0.0


each

<instance> each(callback, scope, [args])

Description:

Passes all Textures to the given callback.

Parameters:

nametypeoptionaldescription
callbackEachTextureCallbackNoThe callback function to be sent the Textures.
scopeobjectNoThe value to use as this when executing the callback.
args*YesAdditional arguments that will be passed to the callback, after the child.

Source: src/textures/TextureManager.js#L1660
Since: 3.0.0


exists

<instance> exists(key)

Description:

Checks the given key to see if a Texture using it exists within this Texture Manager.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.

Returns: boolean - Returns true if a Texture matching the given key exists in this Texture Manager.

Source: src/textures/TextureManager.js#L1330
Since: 3.0.0


get

<instance> get(key)

Description:

Returns a Texture from the Texture Manager that matches the given key.

If the key is undefined it will return the __DEFAULT Texture.

If the key is an instance of a Texture, it will return the instance.

If the key is an instance of a Frame, it will return the frames parent Texture instance.

Finally, if the key is given, but not found, and not a Texture or Frame instance, it will return the __MISSING Texture.

Parameters:

nametypeoptionaldescription
keystring | Phaser.Textures.TexturePhaser.Textures.FrameNo

Returns: Phaser.Textures.Texture - The Texture matching the given key.

Source: src/textures/TextureManager.js#L1345
Since: 3.0.0


getBase64

<instance> getBase64(key, [frame], [type], [encoderOptions])

Description:

Gets an existing texture frame and converts it into a base64 encoded image and returns the base64 data.

You can also provide the image type and encoder options.

This will only work with bitmap based texture frames, such as those created from Texture Atlases. It will not work with GL Texture objects, such as Shaders, or Render Textures. For those please see the WebGL Snapshot function instead.

Parameters:

nametypeoptionaldefaultdescription
keystringNoThe unique string-based key of the Texture.
framestring | numberYesThe string-based name, or integer based index, of the Frame to get from the Texture.
typestringYes"'image/png'"A DOMString indicating the image format. The default format type is image/png.
encoderOptionsnumberYes0.92A Number between 0 and 1 indicating the image quality to use for image formats that use lossy compression such as image/jpeg and image/webp. If this argument is anything else, the default value for image quality is used. The default value is 0.92. Other arguments are ignored.

Returns: string - The base64 encoded data, or an empty string if the texture frame could not be found.

Source: src/textures/TextureManager.js#L405
Since: 3.12.0


getFrame

<instance> getFrame(key, [frame])

Description:

Takes a Texture key and Frame name and returns a reference to that Frame, if found.

Parameters:

nametypeoptionaldescription
keystringNoThe unique string-based key of the Texture.
framestring | numberYesThe string-based name, or integer based index, of the Frame to get from the Texture.

Returns: Phaser.Textures.Frame - A Texture Frame object.

Source: src/textures/TextureManager.js#L1404
Since: 3.0.0


getPixel

<instance> getPixel(x, y, key, [frame])

Description:

Given a Texture and an x and y coordinate this method will return a new Color object that has been populated with the color and alpha values of the pixel at that location in the Texture.

Parameters:

nametypeoptionaldescription
xnumberNoThe x coordinate of the pixel within the Texture.
ynumberNoThe y coordinate of the pixel within the Texture.
keystringNoThe unique string-based key of the Texture.
framestring | numberYesThe string or index of the Frame.

Returns: Phaser.Display.Color - A Color object populated with the color values of the requested pixel, or null if the coordinates were out of bounds.

Source: src/textures/TextureManager.js#L1493
Since: 3.0.0


getPixelAlpha

<instance> getPixelAlpha(x, y, key, [frame])

Description:

Given a Texture and an x and y coordinate this method will return a value between 0 and 255 corresponding to the alpha value of the pixel at that location in the Texture. If the coordinate is out of bounds it will return null.

Parameters:

nametypeoptionaldescription
xnumberNoThe x coordinate of the pixel within the Texture.
ynumberNoThe y coordinate of the pixel within the Texture.
keystringNoThe unique string-based key of the Texture.
framestring | numberYesThe string or index of the Frame.

Returns: number - A value between 0 and 255, or null if the coordinates were out of bounds.

Source: src/textures/TextureManager.js#L1548
Since: 3.10.0


getTextureKeys

<instance> getTextureKeys()

Description:

Returns an array with all of the keys of all Textures in this Texture Manager. The output array will exclude the __DEFAULT, __MISSING, __WHITE, and __NORMAL keys.

Returns: Array.<string> - An array containing all of the Texture keys stored in this Texture Manager.

Source: src/textures/TextureManager.js#L1469
Since: 3.0.0


parseFrame

<instance> parseFrame(key)

Description:

Parses the 'key' parameter and returns a Texture Frame instance.

It can accept the following formats:

  1. A string 2) An array where the elements are: [ key, [frame] ] 3) An object with the properties: { key, [frame] } 4) A Texture instance - which returns the default frame from the Texture 5) A Frame instance - returns itself

Parameters:

nametypeoptionaldescription
keystring | arrayobjectPhaser.Textures.Texture

Returns: Phaser.Textures.Frame - A Texture Frame object, if found, or undefined if not.

Source: src/textures/TextureManager.js#L1423
Since: 3.60.0


remove

<instance> remove(key)

Description:

Removes a Texture from the Texture Manager and destroys it. This will immediately clear all references to it from the Texture Manager, and if it has one, destroy its WebGLTexture. This will emit a removetexture event.

Note: If you have any Game Objects still using this texture they will start throwing errors the next time they try to render. Make sure that removing the texture is the final step when clearing down to avoid this.

Parameters:

nametypeoptionaldescription
keystring | Phaser.Textures.TextureNoThe key of the Texture to remove, or a reference to it.

Returns: Phaser.Textures.TextureManager - The Texture Manager.

Fires: Phaser.Textures.Events#event:REMOVE

Source: src/textures/TextureManager.js#L282
Since: 3.7.0


removeKey

<instance> removeKey(key)

Description:

Removes a key from the Texture Manager but does not destroy the Texture that was using the key.

Parameters:

nametypeoptionaldescription
keystringNoThe key to remove from the texture list.

Returns: Phaser.Textures.TextureManager - The Texture Manager.

Source: src/textures/TextureManager.js#L332
Since: 3.17.0


renameTexture

<instance> renameTexture(currentKey, newKey)

Description:

Changes the key being used by a Texture to the new key provided.

The old key is removed, allowing it to be re-used.

Game Objects are linked to Textures by a reference to the Texture object, so all existing references will be retained.

Parameters:

nametypeoptionaldescription
currentKeystringNoThe current string-based key of the Texture you wish to rename.
newKeystringNoThe new unique string-based key to use for the Texture.

Returns: boolean - true if the Texture key was successfully renamed, otherwise false.

Source: src/textures/TextureManager.js#L1626
Since: 3.12.0


resetStamp

<instance> resetStamp([alpha], [tint])

Description:

Resets the internal Stamp object, ready for drawing and returns it.

Parameters:

nametypeoptionaldefaultdescription
alphanumberYes1The alpha to use.
tintnumberYes"0xffffff"WebGL only. The tint color to use.

Returns: Phaser.GameObjects.Image - A reference to the Stamp Game Object.

Source: src/textures/TextureManager.js#L1687
Since: 3.60.0


resetTileSprite

<instance> resetTileSprite([alpha], [tint])

Description:

Resets the internal Tile Sprite object, ready for drawing, and returns it.

Parameters:

nametypeoptionaldefaultdescription
alphanumberYes1The alpha to use.
tintnumberYes"0xffffff"WebGL only. The tint color to use.

Returns: Phaser.GameObjects.TileSprite - A reference to the Tile Sprite Game Object.

Source: src/textures/TextureManager.js#L1716
Since: 4.0.0


setTexture

<instance> setTexture(gameObject, key, [frame])

Description:

Sets the given Game Objects texture and frame properties so that it uses the Texture and Frame specified in the key and frame arguments to this method.

Parameters:

nametypeoptionaldescription
gameObjectPhaser.GameObjects.GameObjectNoThe Game Object the texture would be set on.
keystringNoThe unique string-based key of the Texture.
framestring | numberYesThe string or index of the Frame.

Returns: Phaser.GameObjects.GameObject - The Game Object the texture was set on.

Source: src/textures/TextureManager.js#L1602
Since: 3.0.0