【问题标题】:SKSpriteNode won't follow exact pathSKSpriteNode 不会遵循确切的路径
【发布时间】:2019-07-27 04:17:42
【问题描述】:

图片中描述了问题。

到2:如果阻塞节点被移除,SKSpriteNode应该再次移动

【问题讨论】:

  • 您应该分享部分代码,显示您在 SKSpriteNode 上运行的 SKAction。您的问题可能与物理体有关,特别是您如何配置节点的质量/密度。但是,如果您想完全控制 SKSpriteNode 的移动方式,则应考虑实现碰撞,这样当 SKSpriteNode 和阻塞节点发生碰撞时,您可以移除初始 SKAction 并应用新的 SKAction。
  • 这不能解决问题。我只想知道如何创建一个 SKAction,如果我给出精确坐标,它将移动到某个点

标签: sprite-kit skspritenode skaction


【解决方案1】:

根据您在评论中的目标:

如果您需要将节点(SKSpriteNodeSKShapeNode 等)移动到场景中的特定坐标,这是您的示例:

let boxSize = CGSize(width: 50, height: 50)
var box = SKShapeNode(rect: CGRect(x: 25, y: 25, width: boxSize.width, height: boxSize.height))
var point = CGPoint(x: 25, y: 125)
var animTime:TimeInterval = 2
box.physicsBody = SKPhysicsBody.init(rectangleOf: boxSize)

let moveToPointAction = SKAction.move(to: point, duration: animTime)
box.run(moveToPointAction)

【讨论】:

  • @Lucas 我回答了你的问题。您想知道如何创建 SKAction 并将对象移动到特定点。我的回答正是给你这个。如果合并其他对象,则需要实现碰撞检测并在两个对象发生碰撞时按照您的喜好处理它们。祝你好运
猜你喜欢
  • 1970-01-01
  • 2021-05-27
  • 2015-04-21
  • 1970-01-01
  • 1970-01-01
  • 2019-02-22
  • 2012-07-10
  • 2016-03-18
  • 1970-01-01
相关资源
最近更新 更多