2017-10-20 50 views
1

我希望能够在建立3D增强现实应用方面学习和投入大量的时间,因为它们正在慢慢地但肯定地成为人机交互的未来。AR核心性能,学习曲线以及与其他框架的比较

我想学习ARCore,但它只能运行在有限数量的全新手机上,目前由于价格的原因,我无法测试。我对ARCore有几个问题

  1. 与其他流行框架相比,ARCore的性能如何?它是否使用大量资源进行简单的操作,例如运动检测,跟踪和平面检测?
  2. 它是否需要知识和使用OpenGL提到here?它只是绘制网格,顶点和简单对象,或者您应该更了解简单的3D建模?迄今为止,我看到ARKit使用它自己的框架管理事情,这是件好事。
  3. 它是否稳定?大多数时候它经常崩溃还是导致ANR?我找不到应用程序链接,但用户抱怨它有多糟糕。
  4. 是不是没有办法测试和调试除了使用these device以外的代码?我们可以使用一些黑客或其他东西在模拟器上运行它吗?
  5. 您是否可以访问手动相机功能,如ISO,计量等,是否容易像camera.getParameters()或需要一些广泛的工作和/或NDK知识?你可以选择使用哪个相机api,还是仅仅是Camera2 api?我还想知道是否有任何AR框架可以让您使用简单的get或set方法更改Camera1或Camera2 api等摄像机参数?

我搜索了ARToolKit,但我觉得它很难学,很难实现,Vuforia和Wikitude不是免费的,现在让它们成为问题。我搜索了每个框架的论坛和这个过时的thread和其他几个。

我想了解更多的技术和软件开发方面的框架取决于经验数据。如果你的问题是无关紧要的问题,请编辑问题或指导我避免这么做,因为在Android上没有关于增强现实的集体数据,至少我没有找到。其中大部分都是基于单一用户的选项,但根据经验,开发人员无法获得集体数据。我确信有很多开发人员想知道如何去做以及哪个框架适合他们。

回答

1

与其他AR框架一样,ARCore需要很多资源:场景识别和跟踪并非简单的事情,所以让我们将所有AR引擎视为资源使用中的重要内容。

了解OpenGL是一个加号,因为您需要知道3D渲染循环如何工作,无法工作AR。不需要成为OpenGL的主人,但需要基础知识来理解样本并能够创建自己的3D/AR项目。除非你和ARKit & Metal一起工作,否则AR也可能是Unity。

我测试的所有AR lib都是稳定的,API经过测试,绝对不会崩溃。有一个AR跟踪稳定,有些比其他更好,并且都有局限性(让我们试试ARCore和ARKit在一个统一的白色石头地板上......),但无标记的AR引擎在跟踪上非常令人印象深刻,但需要最新的设备并仍处于测试阶段。

说到ARCore,只有一些设备是兼容的,没有办法测试没有他们据我所知。模拟器需要一个相机来测试,不知道它是否存在。

在大多数AR框架中,Camera不可用:我的意思是,框架配置并运行相机,大部分时间甚至无法获取Camera2的实例,有时甚至很难获取相机当前设置(ARCORE)。 增强现实引擎或多或少是一个黑匣子,跟踪输出。我练习了所有这些引擎,我用了一些成功的,有些仍然没有工作(需要时间来深入实施,并使其工作,而不是像样本那样)。我的意见是ARKit和ARCore将使Vuforia & Wikitude弃用,因为跟踪更好,无标记(更重要的一点)和...免费!

祝你好运!

+0

感谢您的回答。这很容易理解,非常详细。如果您有任何想法随时更新,请随时更新。我非常喜欢AR,对这个主题的新技术非常兴奋。我开发了基于位置的简单应用程序,使用Camera,Location和其他东西。 AR库变得易于实施,并且具有良好的功能使其具有吸引力。我不会接受你对这个话题的回答,以获得一些吸引力,但如果有更好的答案发布,我会在一分之后接受它。由于ARKit,我购买了MacBook来学习Swift。 – Thracian

+0

我是一名Android老手,想为我的硕士论文开发3D AR应用程序,并将其作为商业产品发布。我将与AR Core一起去,但那些税收巨大的设备并不便宜。其中一些是最低工资的5倍。我也会检查OpenGL,SLAM算法以便学习3D AR。如果我打算开发一种学术产品,是否有任何必要的需求? – Thracian

+0

我希望可以设置相机参数。你能用这些框架录制视频吗? – Thracian