Spritekit - 将加速应用于物理主体

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spritekit - 将加速应用于物理主体相关的知识,希望对你有一定的参考价值。

我正在开展一个项目,我有一个受重力影响的节点。我希望能够在不接触重力的情况下对该节点应用垂直加速度。就像一个热气球,我会上下移动,而其他物体通常仍然受到重力的影响。

balloon = Vehicle()
balloon.physicsBody = SKPhysicsBody(polygonFrom: path)
balloon.physicsBody?.affectedByGravity = true

我试着玩applyForce(_:)和冲动,但我想要的是一个适当的加速度,而不是随着时间推移无视重力的准时冲动!有什么建议吗?

答案

您正在寻找的是Sprite Kit中的物理领域(SKFieldNode)。

它们提供了以一般力量影响物体的能力,如风,升力,黑洞风格吸引力等。

你可以读到他们here.

关于它们如何工作的真正重要的考虑因素是这个quote

具有设置为false的affectedByGravity的物理实体仍然受到由linearGravityField(withVector :)和radialGravityField()创建的重力场的影响。

但他们忘记也明确表示(呃)受重力影响的物体也会受到这些场的影响。

以上是关于Spritekit - 将加速应用于物理主体的主要内容,如果未能解决你的问题,请参考以下文章

SpriteKit 动画物理

SKPhysicsBody的奇怪行为

单视图应用程序中的 SpriteKit 场景?

SpriteKit可摧毁物理场景的进一步完善

在 SpriteKit 的 Flappy Bird 风格游戏中使用 self.speed 改变物理?

SpriteKit 的 SKPhysicsBody 与多边形辅助工具