atlas information. See loader.getJSON
Optionalsrc: anyImage source
Optionalcache: booleanUse true to skip caching this Texture
// create a texture atlas from a JSON Object
game.texture = new me.TextureAtlas(
me.loader.getJSON("texture")
);
// create a texture atlas from a multipack JSON Object
game.texture = new me.TextureAtlas([
me.loader.getJSON("texture-0"),
me.loader.getJSON("texture-1"),
me.loader.getJSON("texture-2")
]);
// create a texture atlas for a spritesheet with an anchorPoint in the center of each frame
game.texture = new me.TextureAtlas(
{
framewidth : 32,
frameheight : 32,
anchorPoint : new me.Vector2d(0.5, 0.5)
},
me.loader.getImage("spritesheet")
add a region to the atlas
region mame
x origin of the region
y origin of the region
width of the region
height of the region
the created region
add uvs mapping for the given region
the atlas dictionnary where the region is define
region (or frame) name
the width of the region
the height of the region
the created region UVs
Create a sprite object using the first region found using the specified name
name of the sprite
Optionalsettings: objectAdditional settings passed to the Sprite contructor
OptionalnineSlice: boolean = falseif true returns a 9-slice sprite
// create a new texture object under the `game` namespace
game.texture = new me.TextureAtlas(
me.loader.getJSON("texture"),
me.loader.getImage("texture")
);
...
...
// create a new "coin" sprite
let sprite = game.texture.createSpriteFromName("coin.png");
// set the renderable position to bottom center
sprite.anchorPoint.set(0.5, 1.0);
...
...
// create a 9-slice sprite
let dialogPanel = game.texture.createSpriteFromName(
"rpg_dialo.png",
// width & height are mandatory for 9-slice sprites
{ width: this.width, height: this.height },
true
);
Return the Sprite settings object (framewidth, frameheight, atlas, atlasIndices, etc.) for the given set of atlas frame names. This is useful when extending Sprite and you need to pass atlas animation data to the parent constructor.
Optionalnames: string[] | number[]list of names for each sprite (when manually creating a Texture out of a spritesheet, only numeric values are authorized). If not specified, all defined names/entries in the atlas will be added.
A settings object suitable for passing to the Sprite constructor
// extend Sprite directly with texture atlas animation frames
class MyPlayer extends me.Sprite {
constructor(x, y, settings) {
super(x, y, {
...game.texture.getAnimationSettings([
"walk0001.png", "walk0002.png", "walk0003.png"
]),
anchorPoint: { x: 0.5, y: 1.0 }
});
// add a physic body
this.body = new me.Body(this, new me.Rect(0, 0, this.width, this.height));
}
}
return the default or specified atlas dictionnary
Optionalname: stringatlas name in case of multipack textures
return the format of the atlas dictionnary
will return "texturepacker", or "ShoeBox", or "melonJS", or "Spritesheet (fixed cell size)"
return a normalized region (or frame) information for the specified sprite name
name of the sprite
Optionalatlas: stringname of a specific atlas where to search for the region
return the source texture for the given region (or default one if none specified)
Optionalregion: objectregion name in case of multipack textures
return the uvs mapping for the given region
region (or frame) name, or sx when using numeric parameters
Optionalsy: numbersource y coordinate (when using numeric parameters)
Optionalsw: numbersource width (when using numeric parameters)
Optionalsh: numbersource height (when using numeric parameters)
region Uvs
A Texture atlas class, currently supports :