在 SceneKit 中给对象上色相当于什么?
What is the equivalent of colorizing an object in SceneKit?
如何为 SCNNode
的颜色变化设置动画?在 SpriteKit
中我只会使用 colorizeWithColor SKAction
,但在 SceneKit
中这不是一个选项。在 SpriteKit
中,我通常会在两个节点之间发生冲突。当节点发生碰撞时,其中一个节点仅通过 运行 和 colorizeWithColor SKAction
改变颜色。对于 SCNNode
,SceneKit
中的这个等价于什么?
您可以使用 material 的 multiply
属性 来达到类似的效果。您可以使用 SCNTransaction
的 animationDuration
属性.
设置淡入淡出长度
SCNTransaction.begin()
SCNTransaction.animationDuration = yourFadeDuration
geometry?.firstMaterial?.multiply.contents = yourDesiredColor
SCNTransaction.commit()
如何为 SCNNode
的颜色变化设置动画?在 SpriteKit
中我只会使用 colorizeWithColor SKAction
,但在 SceneKit
中这不是一个选项。在 SpriteKit
中,我通常会在两个节点之间发生冲突。当节点发生碰撞时,其中一个节点仅通过 运行 和 colorizeWithColor SKAction
改变颜色。对于 SCNNode
,SceneKit
中的这个等价于什么?
您可以使用 material 的 multiply
属性 来达到类似的效果。您可以使用 SCNTransaction
的 animationDuration
属性.
SCNTransaction.begin()
SCNTransaction.animationDuration = yourFadeDuration
geometry?.firstMaterial?.multiply.contents = yourDesiredColor
SCNTransaction.commit()