react-native - React Native 的增强现实(相机上的兴趣点)

标签 react-native augmented-reality

我正在开发适用于 Android 和 iOS 的应用程序,以在相机上显示兴趣点。现在 ARkit 和 ARcore 的兼容性很差。

你能推荐我一些图书馆来做到这一点吗?如果有例子就更好了!我知道 viro-media,但我不明白如何使用该库来做到这一点。

我不想要 3D 模型,只是相机上的标记,类似于附件图像。

markers over the camera

最佳答案

要使用 Viro React 做到这一点——在一般的 AR 中——诀窍是认识到有两个坐标系:

  • 您设备的本地坐标系,我们将其称为“AR 空间”。在 Viro 中,它以应用程序启动时用户的初始位置为中心,以米为单位。
  • 地理坐标(纬度和经度)。

  • 要定位叠加层,您必须将内容从地理坐标转换为 AR 空间。这是一个两步过程。首先将球面地理坐标投影到二维平面上——Web Mercator非常适合这个。然后通过设备的初始投影位置转换投影坐标。

    设备的初始投影位置可以通过投影其初始地理位置来导出。在 Viro React 中,您可以使用 Geolocation module当用户启动应用程序时捕获这个。

    最后,您需要对用户的方位进行类似的转换:在 AR 空间中从罗盘方向转换为设备方向。

    为此,您可能必须弄清楚如何处理不准确的地理定位查找(例如,如果从设备检索到的位置不准确会发生什么),并且可能还必须考虑漂移:随着时间的推移,两个坐标系可能会开始不同步。

    最后一部分,创建信息卡,使用 Viro 很容易——您可以使用文本预烘焙图像并使用 ViroImage,或者如果卡片需要更加动态,您可以使用 ViroFlexView。

    关于react-native - React Native 的增强现实(相机上的兴趣点),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47419496/

    相关文章:

    ios - 做变形动画时如何软化

    unity3d - 统一设置 Watson 开发人员 : credentials

    swift - ARKit——与真实世界物体的碰撞

    react-native - 如何使用 REALM 连接两个表

    javascript - React Native,在 for 循环中创建按钮

    javascript - Wikitude 与 Android Studio

    swift - 在 RealityKit 中更改对象的枢轴点

    android - 有没有办法让 react-native 忽略一些不 bundle 它们的文件?

    java - React Native如何获取 "getPackageManager()"

    syntax - 有什么不同?你能解释一下语法吗?