Я хочу реализовать следующую функциональность: Пользователь сканирует одно изображение (это цель, все из них - 5 пункта), и после того, как изображение будет сканировать - начнет воспроизводить звук (связанный с этим изображением). Я использую библиотеку Arame (создание сцены и звуковые объекты) и Mindar (обнаружение сканированных фотографий); Все они основаны на компонентах функции React. Для теста я создал макет: < /p>
< /code>
На данный момент:
Когда я сканирую фото льва - все работает правильно, но когда я меняю сканированную фотографию на OWL - звук не играет. < /p>
import React, { useCallback, useEffect, useRef, useState } from 'react';
import 'aframe';
import 'mind-ar/dist/mindar-image-aframe.prod.js';
import { getChildrenByGroup } from './../utils/helpers';
const MindARViewer = ({children_AR_list}) => {
const sceneRef = useRef(null);
const sceneRefering= useRef([]);
const [targetFound, setTargetFound] = useState("");
let [targetFoundCounter,setTargetFoundCounter] = useState(0);
const [groupedChildren, setGroupedChildren] = useState([]);
useEffect(() => {
setGroupedChildren(getChildrenByGroup(children_AR_list))
}, []);
useEffect(() => {
const sceneEl = sceneRef.current;
const arSystem = sceneEl.systems?.["mindar-image-system"];
const entity = document.querySelector('a-entity[sound]');
// Start AR system when scene starts rendering
sceneEl.addEventListener('loaded', () => {
arSystem.start();
});
// Handle target detection events
sceneEl.addEventListener('targetFound', () => {
setTargetFound(entity?.components.sound.parsingAttrValue)
console.log(`Target found:`, entity?.components.sound.parsingAttrValue);
// setTargetFoundCounter(targetFoundCounter++)
entity?.components.sound?.playSound();
});
sceneEl.addEventListener('targetLost', () => {
entity?.components.sound?.pause();
});
return () => {
arSystem.stop();
entity?.components.sound.pause();
}
}, []);
return (
{
}
)
}
export default MindARViewer;
Подробнее здесь: https://stackoverflow.com/questions/796 ... ame-entity
Установите индивидуальный звук для каждой Aframe Entity ⇐ Javascript
Форум по Javascript
-
Anonymous
1749197439
Anonymous
Я хочу реализовать следующую функциональность: Пользователь сканирует одно изображение (это цель, все из них - 5 пункта), и после того, как изображение будет сканировать - начнет воспроизводить звук (связанный с этим изображением). Я использую библиотеку Arame (создание сцены и звуковые объекты) и Mindar (обнаружение сканированных фотографий); Все они основаны на компонентах функции React. Для теста я создал макет: < /p>
< /code>
На данный момент:
Когда я сканирую фото льва - все работает правильно, но когда я меняю сканированную фотографию на OWL - звук не играет. < /p>
import React, { useCallback, useEffect, useRef, useState } from 'react';
import 'aframe';
import 'mind-ar/dist/mindar-image-aframe.prod.js';
import { getChildrenByGroup } from './../utils/helpers';
const MindARViewer = ({children_AR_list}) => {
const sceneRef = useRef(null);
const sceneRefering= useRef([]);
const [targetFound, setTargetFound] = useState("");
let [targetFoundCounter,setTargetFoundCounter] = useState(0);
const [groupedChildren, setGroupedChildren] = useState([]);
useEffect(() => {
setGroupedChildren(getChildrenByGroup(children_AR_list))
}, []);
useEffect(() => {
const sceneEl = sceneRef.current;
const arSystem = sceneEl.systems?.["mindar-image-system"];
const entity = document.querySelector('a-entity[sound]');
// Start AR system when scene starts rendering
sceneEl.addEventListener('loaded', () => {
arSystem.start();
});
// Handle target detection events
sceneEl.addEventListener('targetFound', () => {
setTargetFound(entity?.components.sound.parsingAttrValue)
console.log(`Target found:`, entity?.components.sound.parsingAttrValue);
// setTargetFoundCounter(targetFoundCounter++)
entity?.components.sound?.playSound();
});
sceneEl.addEventListener('targetLost', () => {
entity?.components.sound?.pause();
});
return () => {
arSystem.stop();
entity?.components.sound.pause();
}
}, []);
return (
{
}
)
}
export default MindARViewer;
Подробнее здесь: [url]https://stackoverflow.com/questions/79655590/set-individual-sound-for-each-aframe-entity[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия