gpt4 book ai didi

swift - SceneKit - 如何添加动画来改变 SCNNode 的颜色?

转载 作者:搜寻专家 更新时间:2023-10-30 22:01:52 24 4
gpt4 key购买 nike

我想知道如何使用 Swift 为 SCNNode 的颜色设置动画。

例如:我希望节点不断改变颜色,或者我希望节点从黑色逐渐变为蓝色。

我是使用 SCNAction fadeIn 还是 fadeOut

最佳答案

您可以创建自定义操作。

如果你的场景中有一个红色球体

let sphereNode = scene.rootNode.childNode(withName: "sphere", recursively: false)!
sphereNode.geometry!.firstMaterial!.diffuse.contents = UIColor.red

这就是您构建自定义操作的方式

let changeColor = SCNAction.customAction(duration: 10) { (node, elapsedTime) -> () in
let percentage = elapsedTime / 5
let color = UIColor(red: 1 - percentage, green: percentage, blue: 0, alpha: 1)
node.geometry!.firstMaterial!.diffuse.contents = color
}

最后你只需要在球体上运行 Action

sphereNode.runAction(changeColor)

结果

enter image description here

关于swift - SceneKit - 如何添加动画来改变 SCNNode 的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40472524/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com