SCNNode 不透明度和可见性

SCNNode opacity and visibility

我有一个节点位于另一个节点内。两者都是从 .obj 文件加载的。外部节点的不透明度为 0.01。内部节点的不透明度为 0.99。除非我将其不透明度更改为 1 或将外部节点的不透明度更改为 0,否则内部节点根本不可见。当我稍微旋转不可见节点的场景时,该节点出现。当我将它旋转回来时它就消失了。

关于如何保持内部节点可见性的任何想法?

You can easily control a visibility of an inner sphere using .renderingOrder instance property:

var renderingOrder: Int { get set }       /*  By default it equals to zero  */

代码如下所示:

// NESTED OBJECT
let innerNode = SCNNode()
innerNode.geometry = SCNSphere(radius: 0.5)
innerNode.geometry?.firstMaterial?.diffuse.contents = UIColor(white: 0.0, 
                                                              alpha: 0.99)
scene.rootNode.addChildNode(innerNode)
    
// OUTER OBJECT
let outerSphere = scene.rootNode.childNode(withName: "ball", recursively: true)
outerSphere?.geometry?.firstMaterial?.diffuse.contents = UIColor(white: 1.0, 
                                                                 alpha: 0.3)
outerSphere?.renderingOrder = 1