我正在尝试在UIView
会话中将任何SCNPlane diffuse geometry
用作SceneKit
的内容。有时它可以正常工作,但其他时候却引起奇怪的行为。当我向场景中添加节点时,此view
在屏幕上呈现为平坦状态,就像它刚作为subview
添加到ViewController
视图一样。只是坐在左上角,而不是出现在包含此node
的{{1}}上。几秒钟后或旋转屏幕后,大部分时间便移至飞机上并按预期工作。当我添加plane
而不是views layer
时,并没有发生这种情况,但是我需要使用视图才能使触摸工作。
view
... 视图是通过以下方式创建的:
extension UIView: FindloMedia {
func getMediaNode(augmentedRealityView: AugmentedRealityViewBase) -> Any {
let viewGeometry = SCNPlane()
viewGeometry.firstMaterial!.diffuse.contents = self
viewGeometry.firstMaterial!.isDoubleSided = true
return SCNNode(geometry: viewGeometry)
}
}
我测试了使用的线程,并且一切都在主线程上进行。