创建延伸的"绳索"



我正在尝试使用SpriteKit制作一款游戏,其中主角会射击一根"绳子"并在关卡中晃动(就像蜘蛛侠一样)。我可以轻松地制作绳子并将其连接到玩家和不同精灵身上,但我不知道如何执行"射击"部分。

我现在的绳子是类似于这个(https://www.youtube.com/watch?v=7jWdcbmnmKQ&hd=1),我有几个单独的部分使用SKPhysicsJointPin连接。我已经尝试了几种不同的方法来拍摄绳子,无论是与applyImpulse/ForceSKActions,但没有一个工作顺利。

总结一下:
-制作可以向特定方向延伸的绳子的最佳实践是什么?

我很好,只是一般的指针在正确的方向,因为这是所有的学习,我不认为我真的需要完整的代码

通用指针:

  • 以你需要的方式射击一个物理体"飞行"(子弹)
  • 在didSimulatePhysics中,将子弹的位置分配给rope的第一个节点

理论上,这应该在射击时延长绳子,而不影响子弹的轨迹。

随着子弹与武器/玩家之间距离的增加,你可能需要添加更多的绳子段,否则绳子可能会在子弹飞行路径开始时挤得太紧,导致物理行为出乎意料。虽然在飞行中增加绳索段可能会引起问题。

一种解决方案可能是在到达一定距离或子弹"击中"某物之前禁用绳子的物理功能。在此之前,绳子可以被认为是一条直线,绳子段节点沿着子弹和武器之间的直线定位。

不要使用物理引擎来移动你的延伸绳(applyImpulse),而是尝试以固定速度在直线上移动绳的末端,直到它击中目标。只是一个想法!

相关内容

  • 没有找到相关文章

最新更新