如何在 Phaser 3, Spine 中获取边界框的大小?
Posted
技术标签:
【中文标题】如何在 Phaser 3, Spine 中获取边界框的大小?【英文标题】:How to get size of bounding box in Phaser 3, Spine? 【发布时间】:2022-01-23 12:51:37 【问题描述】:如果我写sprite.drawDebug = true
,它将显示边界框。
Spine 2D 中的边界框
【问题讨论】:
请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 【参考方案1】:根据您的具体需求,这或多或少会比较困难,因为这些数据不是以“用户友好”的方式公开的(据我所知)这里是link to the documentaiton
SpinePlugin 使用 sprite.drawDebug = true
标志来显示脊椎数据的许多不同部分。
在这个例子中你可以看到,这部分是如何划分的:https://phaser.io/examples/v3/view/spine/draw-debug-bounds#
使用按钮可以打开和关闭不同的部分
根据您需要哪组盒子,您必须访问数据,类似于插件本身。 (这里是第 9936 ~ 10095 行附近的 plugin source code 的链接)。数据应该在属性 sprite.skeleton
中,但你必须找到你真正需要的部分。
更新: 如果您使用物理并且物理边界框就足够了,例如在这个例子中:https://phaser.io/examples/v3/view/spine/arcade-physics-spine-body#
您可以使用image.body.width
和image.body.height
获取边界框的大小,也可以使用setSize
更改它。
【讨论】:
谢谢,目前还不行,但我会试试以上是关于如何在 Phaser 3, Spine 中获取边界框的大小?的主要内容,如果未能解决你的问题,请参考以下文章