【问题标题】:SpriteKit - Getting The Weight Of A SKSpriteNodeSpriteKit - 获取 SKSpriteNode 的权重
【发布时间】:2016-03-24 03:50:11
【问题描述】:

我有一个应用程序,大盒子落在红色小盒子的顶部。我想知道红色小块什么时候达到一定的重量(X 个块放在它上面)。我找不到红色块的重量属性。有什么建议么?

编辑:只是为了澄清。从顶部落下的盒子将是随机大小,并且从随机位置落下。所以实际上并没有办法跟踪落在红色方块顶部的东西。我需要一些方法来测量施加在红色块上的向下力

【问题讨论】:

  • 不知道为什么这被否决了(?),因为这是一个非常有趣的问题!也许尝试将a force 应用于您的块。然后你的红色块的质量应该增加(我认为你必须将“affectedByGravity”属性设置为true)。现在无法测试任何东西,但我认为解决方案在于 SKPhysicsBody
  • 质量不应该受重力影响,否则你会说地球上物体的质量与月球上物体的质量不同。 @StackOverflower,我不认为内置的物理学会为您计算重量,您可能必须手动执行(node.mass * 重力),然后将其顶部的其他块应用于块的力大小.对于您使用倾斜块的场景,您可能必须弄清楚有多少倾斜块质量实际上在红色块上
  • 物理引擎是否足够复杂,您可以在红色块上施加向上的力并逐渐增加它直到它开始移动?

标签: swift sprite-kit


【解决方案1】:

您可以通过以下方式计算每个节点的权重,然后将它们相加。

redBox.PhysicsBody?.mass

【讨论】:

  • 大块会从上面的随机位置掉落,所以有些可能不会落在红色块上。
  • 只要检查下落块和红色块之间是否有碰撞。
  • 如果一个大块翻倒并且在红色块的一半处,那将不起作用
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-02
  • 1970-01-01
  • 2014-11-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多