问题标签 [skphysicsjoint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
396 浏览

swift - Swift 创建物理关节

我正在尝试使用 SpriteKit 并创建一个弯曲的肘关节以允许另一个关节运动。问题是,当我创建关节时,当我在屏幕上滑动以进行运动时,所有部件都会旋转 360 度,因此没有保留固定关节(即具有一定运动范围的肘部)。我附上了我的一些代码——一些部分在我试验时被注释掉了。

0 投票
1 回答
287 浏览

swift - 如何围绕关节旋转精灵

我需要让手臂和手围绕钩子的中心旋转,如下图所示,它们不会分开或改变它们的形状(手臂和手之间的角度没有变化,只是在 A 处旋转),如下图所示:

在此处输入图像描述

我尝试旋转手臂,但这使它们分开并改变了形式。您可以在下面查看我的代码:

运行上述代码时,旋转钩子对手臂和手也没有影响,如下图所示:

在此处输入图像描述

如何在图像第一张图像中获得旋转?

0 投票
1 回答
357 浏览

swift - SKPhysicsJointFixed 在移动节点时不会将节点保持在一起

我创建了 2 个 SKSpriteNode,并通过 SKPhysicsJointFixed 将它们连接起来,以使它们粘在一起。问题是当我将 aSKAction.move(by:, duration:)应用于第一个时,它会单独移动。为什么会这样,我怎样才能将它们移动在一起?我搜索了很多,但似乎找不到任何新的或有用的信息。请帮忙。提前致谢。

这是代码:

0 投票
2 回答
600 浏览

ios - SpriteKit 中的简单销接头无法按预期工作

我想做一个钟摆。从 SKScene 开始,一切默认,我执行以下操作...

如果我不添加引脚逻辑,支点会如预期的那样停留在场景的中间,并且扫帚柄会掉到地板上,所以我知道扫帚柄会受到重力的影响。添加引脚后,我得到了这个:

在此处输入图像描述

没有动静。为什么?这也不会导致任何运动......

我希望扫帚柄会摆动和摆动,因为它固定在支点上。我看过关于先定位节点的文章,然后是关节,但我已经做到了。我期望扫帚摆动我错了吗?我怎样才能让它这样做?

0 投票
2 回答
200 浏览

ios - 缩放用 SKSpriteNodes 制作的钟摆

我有一个带钟摆的工作时钟,但摆臂不能正确缩放。这是缩放之前的样子...

在此处输入图像描述

然后,缩放后...

在此处输入图像描述

钟面按比例缩小,摆臂(绿线)也按比例缩小,但看起来它围绕它的中心点而不是面中心的支点按比例缩小。我可以通过设置秋千来修复这种缩放,anchorPoint使其向一端而不是中心缩放......

但这样做会导致钟摆不摆动。(我认为是因为物理力被施加到摇摆上anchorPoint,如果我将它移动到一端,它就会位于固定的销锚上)。

我怎样才能让手臂朝着支点缩放并仍然允许它摆动?

这是代码...

0 投票
0 回答
120 浏览

ios - 固定关节的锚点与节点未对齐 - swift

我有一个有两个节点的场景,一个是形状节点,另一个是精灵节点。我添加到场景中并定义了它各自的物理体属性。一切看起来都很好,直到我在两个节点之间添加了一个新的 Fixed 关节,你可以看到物理调试通过屏幕显示一条对角线,我不知道这是什么意思,锚点似乎没有对齐。

注意:锚节点是1x1大小的图片

这是代码

这是截图(我还不能在我的帖子中包含图片,所以这是链接) 截图

0 投票
1 回答
408 浏览

ios - 使用 SpriteKit 场景编辑器设计复杂对象

据我所知,没有办法在场景编辑器中添加物理关节。那正确吗?

考虑一个简单的人对象,它有身体、儿童腿和手臂,带有销关节。如果我想在场景编辑器中设计这个人,然后以编程方式将他添加到场景中,我不会走得太远。我能够在场景中找到节点,将它们从父节点中移除,并将它们作为子节点添加到场景中的新位置,但我仍然必须手动指定它们的所有关节。

想法?

0 投票
1 回答
57 浏览

ios - SKPhysicsJointFixed.joint 减慢 Sprite

我有一个需要 SKPhysicsJointFixed.joint 的小游戏,并且一切正常,除了一个事实,即关节在 10 秒处于活动状态时会减慢精灵的速度,速度似乎是没有关节活动的精灵速度的一半。

我已经尝试过,恢复原状,密度甚至速度,但它们都起作用了。有人可以指导我正确的方向。我在这里找不到任何东西,或者谷歌似乎没有用。

没有护盾的宇宙飞船图片:
没有护盾的宇宙飞船图片

带盾的宇宙飞船图片:
带盾的宇宙飞船的图像

带有 Shield 和 showPhysics = true 的宇宙飞船的图像:
带有 Shield 和 showPhysics 的宇宙飞船的图像 = true

0 投票
1 回答
182 浏览

sprite-kit - Spritekit 物理销毁对象动画

是否有可能在接触时破坏物体?就像不只是用 body.removeFromParent() 从屏幕上删除它一样,我想要一个动画。

我有一个玩家和墙壁,当玩家有一个特殊的能量提升时,我希望它能够在接触时摧毁墙壁。我可以想象我像墙一样分裂了许多小的物理体,它们像锚点一样粘在一起,当我的玩家击中它时,他们会从玩家那里得到一个冲动(我猜只是将 isDynamic 设置为 true)然后输了锚点,这样所有的精灵节点都会飞起来,所以墙会被摧毁。

你能给我一些帮助/建议一个好的方法吗?

0 投票
0 回答
69 浏览

ios - SKPhysicsJointPin - 节点卡住和关节伸展

我在这里有几个问题,它们可能相关也可能不相关。我有一个角色是登山者,它有躯干、左臂、右臂、左手和右手。每只手的手臂都有一个 SKPhysicsJointPin,每只手臂的躯干都有一个 SKPhysicsJointPin。除了两只手外,所有的手都受到重力的影响,所以身体从手上垂下来。我使用 SKAction 将每只手向上移动并将身体向上拉。一只手被锁定,而另一只手自由移动。锁定的手将代表“握住”岩石。我最初使用矩形来测试这一点。每当我“伸手”太远时,关节就会开始拉开。为了解决这个问题,我限制了一次可以达到多远以将关节保持在一起。我上传了一些图像来替换矩形,它们使用 alpha 蒙版来映射它们的真实形状。现在当我测试时,躯干向左摆动一点就会卡住。关节将开始伸展,手和手臂开始分开。有时它会清除所有这些并回忆起自己,但所有关节仍然会分开。

为什么从矩形切换到图像时会有这样的变化?这是一个错误吗?我怎样才能以不会像这样拉开的方式使用这些关节?我已经搞砸了所有设置,包括删除所有约束等等,但仍然是同样的问题。

通过在屏幕上拖动来移动手以将手拉起来

SKPhysics关节针拉伸