在 iOS 设备上的 AR 查看器中从 3D 模型中删除混合效果

问题描述

我一直在使用模型查看器将 WebAR 添加到我的网站上,在 Android 上,模型看起来不错并且使用 ARCore 正常运行,但在 iOS 上,当使用 ARKit 时,模型融入了我不需要的氛围中,

如何使用 Model Viewer api 禁用它?除了这个 github issue 之外,我找不到任何引用,但是当我使用它时,我收到一条错误消息,提示“对象需要更新版本的 iOS”。

发行/混合图片

enter image description here

解决方法

您似乎在谈论 People Occlusion 功能,而不是混合。在本机中,当您在 Xcode 中编码时,您可以使用单行解决方案禁用此功能:

arView.renderOptions = [.disablePersonOcclusion]

在 ARKit 中有一个名为 .personSegmentationWithDepth 的类型属性。此帧语义指定 ARKit 在相机提要中检测到的任何人都应遮挡虚拟内容,具体取决于人在场景中的深度。 Segmentation是提取Alpha通道的过程。 Segmentation with Depth 为 RGB 调色板提供了 2 个额外的通道 - Alpha 和 ZDepth。

iOS 和 Android 都有新的深度 API,可以帮助您实现遮挡。但为此,您需要在官方支持的设备上运行确定的 iOS 版本(或 Android 版本)。

在 Android Studio、Unity 或 Vuforia 中,有不同的方法可以关闭遮挡。例如,看看这些下拉选项:

enter image description here