-1

我在 web ar 中开始了一些示例,我发现所有示例都适用于 nft 或标记。我想做的东西不应该总是依赖于标记或 nft。一旦检测到标记,我应该能够在 AR 中播放内容而不再需要标记。

对不起,我的英语很烂。等待帮助。谢谢

4

1 回答 1

0

您可以将元素保留在屏幕上检测到标记的位置。

只需等到检测到标记,然后将其位置、旋转和缩放复制到带有内容的实体。执行此操作的组件可能如下所示:

AFRAME.registerComponent('video-logic', {
    init: function () {
        const marker = document.querySelector("a-marker");

        marker.addEventListener("markerFound", evt => {
          // you can wait a while so the content won't appear somewhere on the border
          setTimeout(evt => {
            this.el.setAttribute("position", marker.getAttribute("position");
            this.el.setAttribute("rotation", marker.getAttribute("rotation");
          }, 500)
        })
    }
});

// The content is separate from the marker
//<a-box material="src: #video;" video-logic></a-box>
//<a-marker smooth="true" preset="hiro"></a-marker>

就像我在这里做的一样

于 2021-09-30T21:41:52.607 回答