作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
嘿,我正在尝试弄清楚如何以淡出持续时间结束 scnActions moveto 动作。基本上我有一辆车,汽车移动到现场,但一旦 Action 完成就突然停下来。我希望尝试让汽车更平稳地停下来。但我真的需要弄清楚如何在 scnAction 上获得淡出持续时间。我还查看了 Apple 的开发人员页面,但没有帮助。如果有解决方案。我不知道如何将它放入可用的 swift 代码中。
有错误的失败代码
let moveAction = SCNAction.moveTo(location, duration: 1.5)
moveAction.fadeInWithDuration = 1
moveAction.fadeIn(withDuration: 1)
moveAction = SCNAction.fadeIn(withDuration: 1)
moveAction.fadeOut(1.0)
moveAction.fadeOutWithDuration = 1
最佳答案
您需要调整 Action 的计时模式,以随着时间的推移获得平滑、缓慢的移动/变化。 Scene Kit(和 Sprite Kit)中有四种不同的模式。
这是通过枚举设置的:SCNActionTimingMode
每一个都有一个例子。
感谢 Swift 3.0 的简洁,它现在看起来像这样:
let moveAction = SCNAction.move(to: location, duration: 1.5)
moveAction.timingMode = .easeInEaseOut
这里有更多样的计时 Action 产品:
关于ios - 如何向 SCNAction 添加淡出持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39690459/
我是一名优秀的程序员,十分优秀!