Как все время воспроизводить контент в AR после обнаружения маркера без маркера (одноразовое обнаружение, а затем воспроизведение)

Я начал некоторые из примеров в веб-артаде, я обнаружил, что все примеры работают с nft или маркером. Я хочу сделать что-то подобное, которое не всегда должно зависеть от маркера или nft. Как только маркер будет обнаружен, я смогу воспроизводить контент в AR без маркера.

Извини, мой английский - отстой. Жду помощи. Спасибо

1 ответ

Вы можете оставить на экране элемент, на котором был обнаружен маркер.

Просто подождите, пока маркер будет обнаружен, и скопируйте его положение, поворот и масштаб в объект с содержимым. Компонент, выполняющий это, может выглядеть так:

      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>

Что-то вроде того, что я сделал здесь

Другие вопросы по тегам