TextureManager

.Textures. TextureManager

纹理由全局纹理管理器管理.这是一个单独的类 负责创建纹理并将其对应的框架传递给游戏对象. 精灵和其他游戏对象从纹理管理器获得他们需要的纹理数据. 通过 `scene.texture` 访问.

Constructor

new TextureManager(game)

Since:
  • 3.0.0
Parameters:
Name Type Description
game Phaser.Game 相位器.纹理管理器所属的游戏实例.

Extends

Members

game :Phaser.Game

Since:
  • 3.0.0
这个纹理管理员所属的游戏.
Type:

list :object

Since:
  • 3.0.0
Default Value:
  • {}
具有纹理管理器创建的所有纹理的对象. 纹理被分配给关键点,所以我们可以通过键值直接访问这个对象的任何纹理,而无需迭代.
Type:
  • object

name :string

Since:
  • 3.0.0
该经理的姓名.
Type:
  • string

Methods

addAtlas(key, source, data, dataSourceopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
向这个纹理管理器添加一个新的纹理贴图. 它可以接受JSON数组或JSON哈希格式,如纹理打包器和类似软件导出的格式.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement 源图像元素.
data object 纹理图谱数据.
dataSource HTMLImageElement | HTMLCanvasElement | Array.<HTMLImageElement> | Array.<HTMLCanvasElement> <optional>
可选数据图像元素.
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addAtlasJSONArray(key, source, data, dataSourceopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
向此纹理管理器添加纹理贴图. 地图集的框架数据必须存储在JSON中的数组中. 这在软件中被称为JSON数组,如纹理打包器.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement | Array.<HTMLImageElement> 源图像元素.
data object | Array.<object> 纹理图谱数据.
dataSource HTMLImageElement | HTMLCanvasElement | Array.<HTMLImageElement> | Array.<HTMLCanvasElement> <optional>
可选数据图像元素.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addAtlasJSONHash(key, source, data, dataSourceopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
向此纹理管理器添加纹理贴图. 地图集的框架数据必须存储在JSON中的一个对象中. 这在软件中被称为JSON哈希,如纹理打包器.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement 源图像元素.
data object 纹理图谱数据.
dataSource HTMLImageElement | HTMLCanvasElement | Array.<HTMLImageElement> | Array.<HTMLCanvasElement> <optional>
可选数据图像元素.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addAtlasXML(key, source, data, dataSourceopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.7.0
给纹理管理器添加一个纹理贴图,贴图数据在这里给出 XML格式的.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement 源图像元素.
data object 纹理图谱可扩展标记语言数据.
dataSource HTMLImageElement | HTMLCanvasElement | Array.<HTMLImageElement> | Array.<HTMLCanvasElement> <optional>
可选数据图像元素.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addBase64(key, data) → {this}

Since:
  • 3.0.0
根据给定的Base64编码数据,向纹理管理器添加新的纹理. 它的工作原理是创建一个 `Image` DOM对象,然后将 `src` 属性设置为 给定的base64编码数据.因此,该过程本质上是异步的, 所以在使用纹理之前,一定要听听这个方法调度的事件.
Parameters:
Name Type Description
key string 纹理的唯一基于字符串的键.
data * Base64编码数据.
Fires:
Returns:
这个纹理管理器实例.
Type
this

addCanvas(key, source, skipCacheopt) → (nullable) {Phaser.Textures.CanvasTexture}

Since:
  • 3.0.0
从现有的画布元素创建新的画布纹理对象 并将其添加到这个纹理管理器中,除非 `skipCache` 为真.
Parameters:
Name Type Attributes Default Description
key string 纹理的唯一基于字符串的键.
source HTMLCanvasElement 构成新纹理基础的画布元素.
skipCache boolean <optional>
false 跳过将此纹理添加到缓存中?
Fires:
Returns:
创建的画布纹理,如果该键已在使用,则为 `null` .
Type
Phaser.Textures.CanvasTexture

addGLTexture(key, glTexture, widthopt, heightopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.19.0
获取一个纹理,并从中创建一个相位器纹理,使用给定的关键点将其添加到纹理管理器中. 这允许你使用纹理作为基于纹理的游戏对象的普通纹理,比如精灵. 如果省略了 `width` 和 `height` 参数,但`网络GL纹理`是由Phaser的`网络GL渲染器`创建的 并且具有 `glTexture.width` 和 `glTexture.height` 属性,则将使用这些值. 这是WebGL独有的功能.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
glTexture WebGLTexture 源渲染纹理.
width number <optional>
纹理的新宽度.如果省略,则从 `glTexture.width` 读取.
height number <optional>
纹理的新高度.如果省略,则从 `glTexture.height` 中读取.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addImage(key, source, dataSourceopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
向由给定图像元素创建的纹理管理器添加新纹理.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement 源图像元素.
dataSource HTMLImageElement | HTMLCanvasElement <optional>
可选数据图像元素.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addListener(event, fn, contextopt) → {this}

Since:
  • 3.0.0
Inherited From:
为给定事件添加侦听器.
Parameters:
Name Type Attributes Default Description
event string | symbol 事件名称.
fn function 侦听器函数.
context * <optional>
this 用来调用侦听器的上下文.
Returns:
`this`.
Type
this

addRenderTexture(key, renderTexture) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.12.0
使用给定的关键点向纹理管理器添加渲染纹理. 这允许你使用渲染纹理作为基于纹理的游戏对象(如精灵)的普通纹理.
Parameters:
Name Type Description
key string 纹理的唯一基于字符串的键.
renderTexture Phaser.GameObjects.RenderTexture 源渲染纹理.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addSpriteSheet(key, source, config) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
向此纹理管理器添加精灵表. 在相位器术语中,子画面是包含不同帧的纹理,但是每一帧都是精确的 大小相同,不能修剪或旋转.
Parameters:
Name Type Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement 源图像元素.
config Phaser.Types.Textures.SpriteSheetConfig 此精灵工作表的配置对象.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addSpriteSheetFromAtlas(key, config) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
将子画面添加到纹理管理器,其中子画面作为纹理图册中的框架存在. 在相位器术语中,子画面是包含不同帧的纹理,但是每一帧都是精确的 大小相同,不能修剪或旋转.
Parameters:
Name Type Description
key string 纹理的唯一基于字符串的键.
config Phaser.Types.Textures.SpriteSheetFromAtlasConfig 此精灵工作表的配置对象.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

addUnityAtlas(key, source, data, dataSourceopt) → (nullable) {Phaser.Textures.Texture}

Since:
  • 3.0.0
向此纹理管理器添加统一纹理图谱. 数据必须是统一YAML文件的形式.
Parameters:
Name Type Attributes Description
key string 纹理的唯一基于字符串的键.
source HTMLImageElement 源图像元素.
data object 纹理图谱数据.
dataSource HTMLImageElement | HTMLCanvasElement | Array.<HTMLImageElement> | Array.<HTMLCanvasElement> <optional>
可选数据图像元素.
Fires:
Returns:
创建的纹理,如果该键已经在使用,则为 `null` .
Type
Phaser.Textures.Texture

checkKey(key) → {boolean}

Since:
  • 3.7.0
检查给定的纹理键并抛出一个控制台.如果该键已经在使用,则发出警告,然后返回false. 如果您想避开控制台,请使用 `TextureManager.exists`.
Parameters:
Name Type Description
key string 要检查的纹理键.
Returns:
`true` 如果使用纹理键是安全的,则为 `false` .
Type
boolean

cloneFrame(key, frame) → {Phaser.Textures.Frame}

Since:
  • 3.0.0