Swift SKSpriteNode:按图像特征链接精灵

时间:2016-12-31 21:14:54

标签: swift skspritenode

上下文

为了MWE的目的,我们将使用以下棒图形象: enter image description here

目标是让这些精灵链在屏幕上一起移动: enter image description here

值得注意的是,棒图形图像本身比这个棒图的臂跨宽。然而,背景是透明的。

根据应用程序的不同,可以创建一个继承自SKSpriteNode或封装它的类,例如:一个名为Person的类,用于存储其他信息,其中可能有一个数组var people = [Person]()

问题

1。)假设你有两个前面提到的Person类的实例,每个sprite都会拍一个棒图形图像。如何定位它们 - 以编程方式 - 这样精灵们就会动手触摸''虽然图像有透明背景?当然,人们可能会花一些时间来寻找间距参数以确保实现这一点,但是如果精灵被重新缩放,则该参数必须通过反复试验重新计算。

2。)在这些精灵链中,手拉手,如何让它们以相同的速度在屏幕上移动?如果计算1)中提到的间距参数,则可以为每个SKAction提供Person,使得它们的结束位置是偏移的(但是行进的总距离是相同的),其中TimeInterval是保持不变。有没有办法告诉所有的精灵向左移动,直到离开屏幕,速度为每秒$ x $像素?

1 个答案:

答案 0 :(得分:1)

看起来你已经回答了自己的问题,但这里有一些额外的想法:

  1. 使间距值与精灵的大小成比例。

  2. 是的,有一个 override func awakeFromNib() { self.tabBarItem.title = "title" self.tabBarItem.image = "image.png" } 可以在给定的时间内(实际上是速度)将精灵移动一定距离:SKAction