ARCore:AR 观点差异与澄清

问题描述 投票:0回答:1

ArSceneViewArFragmentScenView有什么区别?我已经在 Google 的 ArCore 示例中看到了所有这些内容,但我不明白它们之间的区别以及它们在不同应用程序中的互换。每个网站都没有提供太多信息,对初学者没有帮助。它们之间有哪些一般属性不同?什么时候应该用什么?

谢谢!

augmented-reality arcore
1个回答
0
投票

ArFragment(AR)

Google Sceneform 的

ArFragment
(它是
BaseArFragment
的子类)是使用高级 API 开发 Android 原生 AR 应用程序的基石。 ArSceneView
ArFragment
的子对象,在其屋顶下不仅有一个
Session
及其用于跟踪平面、增强图像和增强面部的可配置设置,而且还有一个预配置的转换系统,可让您使用开箱即用的手势来移动、旋转和缩放可渲染模型。使用
ArSceneView
,作为
ArFragment
的一部分,您可以获得在 Android 平台上创建 ARCore 应用程序的最简单工具。

场景视图(VR)

Google Sceneform 的 SceneView 为开发人员提供了创建无需 AR 组件的纯虚拟现实 (VR) Android 应用程序的工具。此类别包括不需要使用后置或自拍相机来跟踪现实世界环境的 3D 应用程序。如您所知,使用

SceneView
时,不需要 AR 会话,也不需要使用 Anchors。所有可渲染模型都附加到
Scene
对象的根节点。缺少
ArFragment
会带来一个特点:您必须自己启用手势才能与模型交互。在清单文件中,VR 应用程序通常包含一行 AR 值=“可选”。

GLSurfaceView(AR/VR)

如果由于某些明显的原因,您不想使用已弃用的 Google Sceneform 框架构建 AR/VR 应用程序,那么您应该使用基于 OpenGL 的低级 API 来加载和渲染模型。在这种情况下,必须使用专门的

GLSurfaceView
来创建 3D 场景。作为示例,我建议您查看 HelloAR Kotlin 示例应用程序中的详细 GL 代码。

© www.soinside.com 2019 - 2024. All rights reserved.