Swift:将移动速度更改为SKAction
我有一个简单的精灵动作,我用下面的一行触发:Swift:将移动速度更改为SKAction,swift,skaction,Swift,Skaction,我有一个简单的精灵动作,我用下面的一行触发: actionMove = SKAction.moveTo(CGPoint(x: size.width + CGFloat(KUGELWIDTH / 2), y: yPos), duration: NSTimeInterval(actualDuration)) 然后我以以下方式调用runAction: let actionMoveDone = SKAction.removeFromParent() kugel.runAction(SKA
actionMove = SKAction.moveTo(CGPoint(x: size.width + CGFloat(KUGELWIDTH / 2), y: yPos), duration: NSTimeInterval(actualDuration))
然后我以以下方式调用runAction
:
let actionMoveDone = SKAction.removeFromParent()
kugel.runAction(SKAction.sequence([actionMove, actionMoveDone]))
我困惑的是,在运行期间,正在改变<代码> Skase<代码>的速度(持续时间)。这可能是不可能的,在这种情况下,是否有另一种方法来调用一个精灵在我的<代码>场景>代码>中,我可以在它的运动中间改变精灵的速度?p> 您不能更改动作本身的速度,因为
SKAction
对象是“激发并遗忘”的,并且是可重用的-一旦您将一个对象传递给节点的runAction
方法,您对该动作实例所做的操作将不再影响节点运行该动作所做的操作
但这里还有一些其他选择
1.0
以减慢正在发生的任何事情,或高于1.0
以加快速度您不能更改动作本身的速度,因为
SKAction
对象是“触发并忘记”的,并且是可重用的-一旦您将一个对象传递给节点的runAction
方法,您对该动作实例所做的操作将不再影响节点运行动作所做的操作
但这里还有一些其他选择
1.0
以减慢正在发生的任何事情,或高于1.0
以加快速度用物理代替行动: 设置到达目的地的速度 在目的地创建关节,将对象连接到目的地,并具有阻尼和响应频率。您可以在到达时设置,也可以在开始时设置。初始设置,频率足够高,您无需设置初始速度,它将被“吸引”到目的地,足以为您制作所有动画
在旅程的任何一点,你都可以调整频率,并对移动的物体施加其他力,使其减速或加速。用物理代替动作: 设置到达目的地的速度 在目的地创建关节,将对象连接到目的地,并具有阻尼和响应频率。您可以在到达时设置,也可以在开始时设置。初始设置,频率足够高,您无需设置初始速度,它将被“吸引”到目的地,足以为您制作所有动画
在旅程中的任何一点上,您都可以调整频率并对移动对象施加其他力以使其减速或加速。“更改正在设置动画的节点的速度属性”-这是否意味着可以在更新()中以弯曲速率更改速度属性,并创建非常时髦的坡道,测量和利率变化的影响?@困惑:我相信是的。试试看!非常感谢。潜力展现。。。现在编码。。。十年左右,当我发现如何利用它时,我会向你汇报。“更改正在设置动画的节点的速度属性”-这是否意味着速度属性可以在更新()的每一帧中以弯曲的速率更改,并创建非常时髦的渐变、测量和速率更改效果?@困惑:我相信是这样。试试看!非常感谢。潜力展现。。。现在编码。。。当我发现如何利用它的时候,我会在大约十年后报告。你能举个例子吗?你能举个例子吗?