Ios ARKit如何停止闪烁或如何将节点定位到摄影机,

Ios ARKit如何停止闪烁或如何将节点定位到摄影机,,ios,scenekit,arkit,Ios,Scenekit,Arkit,我已经创造了石板墙。在该平面上,我添加了另一个平面,用户将设备指向该平面 但由于两个平面的位置相同,新添加的平面会闪烁 那么,如何保持与墙节点和平面节点的距离呢 如何添加平面节点 let hitTestScene = self.sceneView.hitTest(self.sceneView.center, options:[SCNHitTestOption.categoryBitMask : 16]) if let first = hitTestScene.first { if f

我已经创造了石板墙。在该平面上,我添加了另一个平面,用户将设备指向该平面

但由于两个平面的位置相同,新添加的平面会闪烁

那么,如何保持与墙节点和平面节点的距离呢

如何添加平面节点

let hitTestScene = self.sceneView.hitTest(self.sceneView.center, options:[SCNHitTestOption.categoryBitMask : 16])
 if let first = hitTestScene.first  {
    if first.node.name == NodeNames.wallNode {
       let value = MathHelper().getMeasurementBetween(vector1: lastNodePosition, and: first.worldCoordinates)
          let node = SCNNode(geometry: SCNPlane(width: CGFloat( value) , height:  CGFloat(value)))
           node.geometry?.firstMaterial?.isDoubleSided = true
           node.name = "Plane1"
           node.geometry?.firstMaterial?.diffuse.contents = UIColor.red.withAlphaComponent(1)
           node.eulerAngles = first.node.eulerAngles
           node.position = lastNodePosition

           self.sceneView.scene.rootNode.addChildNode(node)

       }
 }  
红色的平面不断地翻转(出现-消失)

我尝试了
node.position.z-=0.2
,但它不起作用,并且由于
node.eulerAngles

任何帮助都将不胜感激

我已经弄明白了

通过设置rendringOrder和
readsFromDepthBuffer
我可以停止这种轻弹效果

extension SCNNode {
    func renderOnTop() {
        self.renderingOrder = 2
        if let geom = self.geometry {
            for material in geom.materials {
                material.readsFromDepthBuffer = false
            }
        }
        for child in self.childNodes {
            child.renderOnTop()
        }
    }
}

希望有些人可以使用它,如果相同的问题

如果我在我的文本上这样做,我的文本似乎不再是实心文本,但是的,没有闪烁,但它看起来不再像实心文本:(