OGeek|极客世界-中国程序员成长平台

标题: ios - 场景工具包节点不旋转 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:33
标题: ios - 场景工具包节点不旋转

我正在尝试按场景工具包节点旋转,但它没有旋转。

我希望它绕 y 轴旋转。它是一个球体。

let node = SCNNode()
node.geometry = SCNSphere(radius: 1)
node.geometry?.firstMaterial?.diffuse.contents = UIImage(named: "diffuse.png")
node.geometry?.firstMaterial?.specular.contents = UIImage(named: "specular.png")
node.geometry?.firstMaterial?.emission.contents = UIImage(named: "emission.png")
scene.rootNode.addChildNode(node)


let action = SCNAction.rotate(by:360 * CGFloat((Double.pi)/180.0), around: SCNVector3(x: 0, y: 1, z: 0), duration: 8)

let repeatAction = SCNAction.repeatForever(action)
node.runAction(repeatAction)



Best Answer-推荐答案


你确定它没有旋转吗?我不确定你的漫反射、镜面反射和发射图像是什么,但可能是因为它是一个球体,它看起来并不像在旋转,因为它从各个方面看起来都一样。

在 viewDidAppear 中对多维数据集运行相同的操作对我有用,因此您可能无法真正注意到球体的旋转。我使用了这段代码:

    let node = SCNNode()

    node.geometry = SCNBox (width: 0.5, height: 0.5, length: 0.5, chamferRadius: 0.1)
    node.position = SCNVector3Make(0, 0, -1)
    sceneView.scene.rootNode.addChildNode(node)

    let action = SCNAction.rotate(by:360 * CGFloat((Double.pi)/180.0), around: SCNVector3(x: 0, y: 1, z: 0), duration: 8)

    let repeatAction = SCNAction.repeatForever(action)
    node.runAction(repeatAction)

立方体可以按照您旋转 SCNNode 的方式正常旋转。

希望对你有帮助

关于ios - 场景工具包节点不旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45830598/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4