Я делаю игру в Phaser, используя несколько больших изображений, которые я хочу уменьшить в реальной игре:
create() {
//Create the sprite group and scale it down to 30%
this.pieces = this.add.group(undefined, "pieces", true);
this.pieces.scale.x = 0.3;
this.pieces.scale.y = 0.3;
//Add the players to the middle of the stage and add them to the 'pieces' group
var middle = new Phaser.Point( game.stage.width/2, game.stage.height/2);
var player_two = this.add.sprite(middle.x - 50, middle.y, 'image1', undefined, this.pieces);
var player_one = this.add.sprite(middle.x, middle.y-50, 'image2', undefined, this.pieces);
}
Однако поскольку спрайты масштабируются по размеру, их начальное местоположение также масштабируется, поэтому вместо того, чтобы появляться в середине сцены, они появляются только на 30% расстояния до середины.
Как масштабировать изображение спрайта, не влияя на его расположение?
(Кстати, код написан на Typescript, но я думаю, что этот конкретный образец также является javascript, так что это, вероятно, не имеет значения)