gpt4 book ai didi

ios - SceneKit SCNAction.run 和旋转不起作用

转载 作者:可可西里 更新时间:2023-11-01 00:49:50 28 4
gpt4 key购买 nike

我有一个场景,其中有一个应该永远运行旋转 Action 的盒子:

dps 是可以由用户更改的属性。

override func viewDidAppear() {
super.viewDidAppear()

let scene = SCNScene()
scene.rootNode.addChildNode(boxNode)
self.rateScene.scene = scene

let actionwait = SCNAction.wait(duration: 0.001)
let run = SCNAction.run {_ in
let fps = 60.0
let delta = (self.dps*3.14/180.0)/fps
self.boxNode.rotation.z -= CGFloat(delta)
}
let moveSequence = SCNAction.sequence([actionwait, run])
let forever = SCNAction.repeatForever(moveSequence)
boxNode.runAction(forever)

}

变量 self.boxNode.rotation.z - 每次都会改变,但框不会旋转。

最佳答案

这行不通,因为 SCNAction.run 只计算了一次。每次更改值时都必须重新分配操作。

你可以做的就是类似的事情。只需将该代码放在 slider 的 IBAction 中(或用户用来控制值的任何内容)

let fps = 60.0
let delta = (self.dps * 3.14 / 180.0) / fps

SCNTransaction.begin()
SCNTransaction.animationDuration = 0.1
boxNode.rotation.z -= Float(delta)
SCNTransaction.commit()

关于ios - SceneKit SCNAction.run 和旋转不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40607756/

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