ios - 如何使用计时功能缓慢加速 SpriteKit 的缩放功能

标签 ios swift sprite-kit scale skaction

我有一个要扩展的 Sprite 。我正在使用 scaleTo skaction 来执行此操作...我希望它慢慢缓和。这是我最初的解决方案:

    let scal = SKAction.scale(by: 100, duration: 10)
    scal.timingMode = SKActionTimingMode.easeIn

问题在于,当它向外扩展时,由于它向外扩展的幅度太大,所以速度似乎变慢了。所以我需要使用 timeingFunction 来为操作编写自定义缓入。

https://youtu.be/CE-B27gSXJI

在视频中,您可以看到它开始时很快,然后变慢。它只是以这种方式出现,因为我正在做一个秤,你越大,它就会出现得越慢......

问题:我不知道如何用计时函数来做这个,而且我一直没能找到一个好的来源作为引用?

任何帮助将不胜感激,谢谢!!!

最佳答案

查看 Ray Wenderlich 的 Sprite Kit Utils,以了解如何编写缓动函数的示例:https://github.com/raywenderlich/SKTUtils具体来说,请查看 SKTTimingFunctions.swift 和 SKTEffects.swift。

有一些简洁的函数可以让您更好地控制缓动。您甚至可能想使用那里定义的缓动函数而不做任何更改,它们中的大多数都工作得很好。有关每个缓动函数的行为方式的引用,您可以查看 http://easings.net

希望这对您有所帮助!

关于ios - 如何使用计时功能缓慢加速 SpriteKit 的缩放功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45808500/

相关文章:

ios - SKEmitterNode 没有从父级中删除自己?

swift - 您可以将增量时间应用于 SKAction

ios - 无法为我的应用启用 Game Center

ios - 如何在 IOS 中处理多个远程通知点击

swift - NetService 无法发布

swift - 在 Swift 4 中监听 NSWorkspace 通知

objective-c - UISegmentedControl segment width of 设置背景图片时未设置

ios - GCM IOS 设备未注册

ios - swift 正则表达式 : Replace Lowercase Followed by Uppercase

ios - 在 GameScene.sks 中制作 Sprite 并在代码中访问它