是否可以使用自定义标记?

Ant*_*udd 7 javascript augmented-reality three.js aframe

是否可以使用不像下面的"Hiro"标记的定制标记.我可以使用随机形状(例如红色椭圆形)作为标记吗?

如果目前不支持,有人可以指出我可以开始构建此功能的正确方向吗?

在此输入图像描述

Pio*_*ski 8

AR.js支持自定义标记.使用标记生成器制作任何愚蠢的图像.

让ar.js知道你想要使用你的标记:

<a-marker type="pattern" url="patterns/mypattern.patt">
      <a-entity myobject></a-entity>
</a-marker>
Run Code Online (Sandbox Code Playgroud)

瞧.您可以使用图片在此故障中查看.


Bel*_*eld 6

1.预设=“模式”

首先,如果你看一下原始的js脚本:https://jeromeetienne.github.io/AR.js/aframe/build/aframe-ar.js,你会发现没有preset="custom"else if。例如,搜索else if( _this.data.preset === 'kanji' ){

然而有一个preset="pattern". 所以忽略文档并设置preset="pattern"例如:

<a-marker preset="pattern" type="pattern" url="img/pattern-marker.patt"> <a-box position='0 0.5 0' material='color: black;' soundhandler></a-box> </a-marker>

2. 将 .patt 上传到您的 GitHub 以便它可以解析文件

其次,我的 .patt 没有在本地被提取,所以url="img/pattern-marker.patt"可能不起作用。将此.patt文件推送到 GitHub,然后使用 raw.githubusercontent 引用它。

例子

您可以使用我的模式进行测试。https://raw.githubusercontent.com/lbelfield/augmented-reality/master/src/components/trainTicket/train-ticket.patt

标记的图像如下:https : //github.com/lbelfield/augmented-reality/blob/master/src/components/trainTicket/train-ticket.png

React-Web-AR: 这对你不适用,但如果有人像我一样使用 React-Web-AR,请使用:

<Marker parameters={{ preset: 'pattern', type: 'pattern', patternUrl: 'https://raw.githubusercontent.com/lbelfield/augmented-reality/master/src/components/trainTicket/train-ticket.patt', url: 'https://raw.githubusercontent.com/lbelfield/augmented-reality/master/src/components/trainTicket/train-ticket.patt' }}>