在SceneKit: WWCD2017的新展示是什么? (44:19)期间,有人说我们现在可以使用AVCaptureDevice作为SCNScene的背景内容。
演示文稿的片段:
let captureDevice: AVCaptureDevice = ...
scene.background.contents = captureDevice但是,下面的代码
let captureDevice = AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: .back)!
scene.background.contents = captureDevice产生一个错误:
[SceneKit] Error: Cannot get pixel buffer (CVPixelBufferRef)我还尝试创建和启动AVCaptureSession,然后使用该设备,但结果是相同的。
这里有什么问题吗?
发布于 2017-09-12 16:06:42
编辑
这个错误似乎是在iOS 11.2中修复的。
原始答案
这似乎是SceneKit中的一个bug。
如果这对您有效,那么解决方法就是使用ARSCNView。它允许您访问所有SceneKit API,并自动绘制视频提要作为场景的背景。
https://stackoverflow.com/questions/46173225
复制相似问题