我使用UIView作为SCNPlane的漫反射材质,这样我就可以在3D场景中显示2D菜单。
这就像我预期的那样工作:
var node:SCNNode = // A child of my ARSCNView's scene
var menuVC:UIViewController = // I keep a strong reference to this view controller
let menuPlane:SCNPlane = // Newly created plane
menuPlane.firstMaterial?.diffuse.contents = menuVC.view
let menuPlaneNode = SCNNode(geometry: menuPlane)
menuPlaneNode.eulerAngles.x = -.pi / 2
node.addChildNode(menuPlaneNode)然而,当节点被添加到场景中时,我可以注意到一个“闪光”;进一步检查发现,它是在ARSCNView前面全屏显示的menuVC视图,持续1帧,然后在场景内渲染。
发布于 2019-03-22 22:18:13
我发现了一个解决方法,在故事板中,将视图控制器的模拟大小设置为自由形式,而不是修复解决了该问题:

不过,我不知道为什么。
https://stackoverflow.com/questions/55301624
复制相似问题