         }
         return nil
     }
-
+    
+    #if USE_ARKIT
+    
     /// SCNSceneRendererDelegate hook for rendering
     ///
     /// - Parameters:

    internal var _ciContext: CIContext?
    internal var _pixelBufferPool: CVPixelBufferPool?
    internal var _videoBufferOutput: CVPixelBuffer?

    #if USE_ARKIT
    internal weak var _arView: ARSCNView?
    internal var _renderSemaphore: DispatchSemaphore = DispatchSemaphore(value: 3)
    internal var _renderer: SCNRenderer?

    // MARK: - object lifecycle

    convenience init(arView: ARSCNView) {
        self.init()
        
        #if !( targetEnvironment(simulator) )
        self._device = sceneView.device
        self._renderer = SCNRenderer(device: sceneView.device, options: nil)
        self._renderer?.scene = sceneView.scene
        #endif
        self._arView = sceneView
        self._presentationFrame = sceneView.bounds
    }
    #endif
    

        let options : [CIContextOption : Any] = [.workingColorSpace : CGColorSpaceCreateDeviceRGB(),
                                                 .useSoftwareRenderer : NSNumber(booleanLiteral: false)]
        self._ciContext = CIContext(mtlDevice: device, options: options)
        
        // setup pixel buffer rendering
        #if USE_ARKIT
        self._renderer = SCNRenderer(device: device, options: nil)
