Aframe событие selectstart из режима VR происходит при нажатии на любую точку сцены; ожидается касание по конкретному объекту - PullRequest
0 голосов
/ 28 января 2020

имеют такую ​​проблему:

, используя этот подход: при событии touchclick, из режима xr. currSphere.sceneEl.renderer.xr.getSession (). addEventListener ('selectstart', ev => {console.log ('сфера нажата; цель события:', ev.target);
});
через событие selectstart
, если пользователь делает касание экрана на экране, из режима vr (xr), связанного с a-entity, вызывается обработчик события selectstart, но когда щелкает любое возможное место на всей сцене .

(что-нибудь из этого может появиться какое-то время; мне это кажется странным) Пожалуйста, посмотрите демо на глюк:

http://chrome-80.glitch.me код доступен здесь: https://glitch.com/edit/# ! / join / 4eb40938-196b-4cb2-8670-fd3cce3d0eb3 Браузер chrome 79+; Службы Google vr установлены.

Ожидаемое поведение: только при щелчке по объекту, а не в любом месте на всей сцене, мы должны вызывать обработчик Eventlistener. 2. для 2-х разных сущностей, как в демо-версии, ожидая, что разный обработчик событий вызовет разные rnet сущности. eq: touchclick на box: console.log ('box is click'); нажмите на сферу: console.log («сфера нажата»);

текущее поведение:
при щелчке в любом месте a-сцены по событию selectstart, в котором присутствует только обработчик событий a -phere. Также возможно: иногда ни один из них не нажимается.

Есть идеи? Я также доступен в слабом канале.

1 Ответ

1 голос
/ 28 января 2020

Это ожидаемое поведение. Касания экрана через событие select не предоставляют координаты касания, поэтому они не могут быть связаны с объектом на сцене. Стандартный API все еще обсуждается, и он будет развиваться, чтобы включать больше информации. Тем временем я рекомендую использовать плавкий предохранитель и базовый курсор .

...