夫特SKSpriteNode:由图像特征
问题描述:
语境
链接精灵对于MWE的目的,我们将使用一个棒图的下列图像: 夫特SKSpriteNode:由图像特征
值得注意的是,棒图形象本身比这个棒形图的臂跨宽。但是,背景是透明的。
取决于应用,可以使一个类,无论是从SKSpriteNode
继承或封装它,例如一个名为Person
的类,用于存储附加信息,其中可能有一个数组var people = [Person]()
。
问题
1)假设你有上述Person
类的两个实例,每个精灵以简笔画形象。一个人如何以编程的方式定位他们 - 让这些精灵们“手牵手”触摸,尽管图像有一个透明背景?当然,可以花一些时间寻找一个间距参数来确保达到这个目的,但是这个参数总是必须通过反复试验来重新计算,如果这些精灵被重新缩放的话。
2)给定一个链,这些精灵,携手并进,何以动画它们以相同的速度在屏幕上移动?如果一个计算)在1提到的间隔参数那么SKAction
可以给予每个Person
,使得它们的端部位置偏移(但行进的总距离是相同的),其中TimeInterval所保持相同。有没有办法告诉所有的精灵移动到左边,直到屏幕以每秒$ x $像素的速度出现?
答
看起来你已经回答大多是自己的问题了,但这里有一些额外的想法:
使间距值成正比的精灵的大小。
是的,有一个
SKAction
给定距离超过给定时间内(有效速度)移动的精灵:let moveAction = SKAction.moveBy(x: 10, y: 0, duration: 2)
2.就是我所指了。我的意思是如果没有一个SKAction可以在没有固定终点的情况下在轨迹上设置速度。 – SumNeuron
你也可以给节点一个物理体并设置它们的'velocity'属性。 – nathan