【问题标题】:Scale a SKPhysicsBody, how?缩放 SKPhysicsBody,如何?
【发布时间】:2017-01-10 10:20:47
【问题描述】:

我有理由确定我以前在某处看到过扩展 SKPhysicsBody 的代码,但 google 和文档没有帮助,这让我比平时更困惑。

有没有办法在 SpriteKit 中缩放物理的身体?

这里的文档没有提及任何内容:https://developer.apple.com/reference/spritekit/skphysicsbody

【问题讨论】:

  • 我确实在这里做到了:stackoverflow.com/a/33572073/3402095 使用 SKActions。当然,这是一个简短的尝试,我还没有进行太多测试。你可以试一试,然后返回结果。此外,重新创建物理体是一种方法......如果有很多应该缩放的物体,不知道在这种情况下的性能。
  • 我真的不想改变、重建或制作新的身体,只是缩放现有的身体。嗯,很多。

标签: sprite-kit skphysicsbody


【解决方案1】:

如果您将物理体分配给精灵并缩放该精灵,则物理体将随之缩放。

【讨论】:

  • 我想缩放物理体,而不是精灵。
  • 您可以尝试添加一个“虚拟”节点,其 alpha 设置为 0,该节点具有物理实体到您想要显示的实际节点,然后缩放/更改虚拟节点。
  • 只使用一个 SKNode,不需要 alpha
【解决方案2】:

所以我认为你的问题的答案是肯定的“不”;至少在我以前见过的任何东西中都没有。

如果您想尝试解决方法:

  1. 创建一个比您当前拥有的更大的新物理体。制定一两个方法来完成此任务。

node.physicsBody = scaledPhysicsBody(bodyToScale: xxxx)

2.

我只会创建一个空白 SKNode 并将其子代为您希望被命中检测的任何内容。然后摆脱父母的物理身体,只使用孩子的。现在,您可以在不影响主精灵的图形的情况下缩放子节点(以及 PB)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-07
    • 2021-08-18
    相关资源
    最近更新 更多