A-Frame & ar.js: Multiple markers & boxes
是否有关于如何使用A帧实现多个AR标记的概念证明?
例如 像这样的东西:https://www.youtube.com/watch?v=Y8WEGGbLWlA
亚历山德拉·埃蒂安(Alexandra Etienne)在这篇文章中的第一个视频是我想要的效果(具有不同内容的多个不同的AR"标记"):https://medium.com/arjs/area-learning-with-multi-markers-in -ar-js-1ff03a2f9fbe
我有点不清楚,当使用多个标记时,它们是否需要彼此靠近/存在于同一相机视图中
来自ar.js存储库的此示例使用了多个标记,但是它们都是不同的类型(即一个是Hiro标记,一个是汉字标记,等等):https://github.com/jeromeetienne/AR.js/ blob / master / aframe / examples / multiple-independent-markers.html
tldr:这里的工作故障。了解区域(图像在资产中),单击"接受"按钮,然后切换标记助手。
现在,有一些细节:
1)载入保存的区域数据
初始化后,当
1 | localStorage.get("ARjsMultiMarkerFile") |
最重要的数据是成对的{markerPreset,url.patt}对数组,它们将用于创建
注意:默认情况下,它只是hiro标记。
2)创建区域数据文件
将
1 |
出现一个按钮"学习新标记区域"。
乍一看,它会将您重定向到一个屏幕,您可以在其中保存区域文件。
但是有一个:默认情况下,加载的学习者网站位于另一个域上。
严格来说:
保存在此处的任何数据都不会加载到我们的网站上,因为本地存储是按来源隔离的。
要保存和使用标记区域,您必须创建自己的
要使debugUI按钮将用户重定向到您的学习者html文件,您需要设置
1 | ARjs.AnchorDebugUI.MarkersAreaLearnerURL ="myLearnerUrl.html" |
在
进入学习者网站后,请确保相机可以看到所有标记,并批准学习。
它看起来应该像这样:
一旦获得批准,您将被重定向回您的网站,将加载区域文件并使用数据。
正如@mnutsch所说,AR.js可以满足您的需求。
您可以在两个不同的标记上显示两个不同的模型。如果相机看不到任何标记,则模型会消失(或停留在最后一个标记,具体取决于您的实现方式)。
相机不需要同时看到两者。
屏幕截图:
https://www.dropbox.com/s/i21xt76ijrsv1jh/Screenshot%202018-08-20%2011.25.22.png?dl=0
项目:
https://curious-electric.com/w/experiments/aframe/ar-generic/
此外,与Vuforia不同,它没有"扩展跟踪"功能-一旦看不到代码,就无法再进行跟踪。