如何在Phaser 3中获取书脊游戏对象的大小?

时间:2019-01-27 15:08:04

标签: phaser-framework

我正在尝试获取使用以下代码创建的书脊游戏对象的显示宽度和高度:

let boy = this.add.spine(0, 0, 'boy', 'standing', true);

当我打印输出时,boy.x和boy.y有效。但是boy.width和boy.height(或boy.displayWidth和boy.displayHeight)未定义。我在这里迷路了... 非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我认为我通过查看spine插件源代码解决了我的问题。 它没有width,height属性。相反,它具有getBounds()函数。 但是getBounds()返回纹理的实际大小,因此我必须将大小乘以比例值:

let boyWidth = boy.getBounds().size.x * boy.scaleX;

这里的小注释是:size.x,而不是size.width。因为这就是spine插件的编写方式。 希望这对某人有用。