gpt4 book ai didi

swift - 如何清除作用在 scnnode 上的所有力

转载 作者:行者123 更新时间:2023-11-28 16:11:22 25 4
gpt4 key购买 nike

嘿,我有一个球,它通过冲量力发射到空中。球节点有重力等,但我想做的基本上是停止最初将球发射到空中的冲力。我知道 Impulse 就像一门大炮,完成了某种类型的事情。但是有没有一种方法可以清除节点上除重力之外的所有力呢?我在 xcode 和 SWIFT 中使用 scenekit,但会采用 Objective C 答案

 Ball.physicsBody?.applyForce(velocity, impulse: true)

该行通过 xcode 中的任何错误指示器,但不幸的是,它根本没有做任何事情

Ball.physicsBody?.clearAllForces()

最佳答案

我没有在 SceneKit 中使用过物理学,但我教过物理学,也许这会有所帮助。

冲量和力是两个不同的概念。当您设置 impulse: true 时,您表示您希望应用脉冲而不是力。冲量 (J) 是动量的变化,也等于在设定的时间间隔内施加的力。所以:

冲量=力量x时间

冲量 = 质量 x 速度变化

因此,当您施加脉冲时,您正在改变节点的速度。在我看来,这似乎是一次性交易,在您调用 applyForce 时生效。应该没有必要清除冲动。 (设置 impulse: false 将完全是另一回事,这意味着持续的力量。)

关于swift - 如何清除作用在 scnnode 上的所有力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39514976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com