Как сделать фокус события на А-объекте AFRAME? - PullRequest
1 голос
/ 23 апреля 2019

У меня есть текст сущности, а рядом - щелчок по событию, но когда я щелкаю вправо, левое событие слушалось, а затем просто переходило к правому событию?

кажется, что спусковой крючок слева должен пройти справа, а затем влево

пример

кнопка 1: переход к / createroom кнопка 2: переход в '/ joingroom'

когда я нажимаю кнопку2: запускается «/ createroom», а затем «/ joinroom»

это из-за ширины а-сущности текста? или что ??

это моя сущность

<a-text
  id="createRoom"
  cursor="rayOrigin: mouse;maxDistance: 30; fuse: true ; far: 10"
  width="10"
  position="-6 3 -5"
  align="left"
  value="create room"
  geometry="primitive:plane"
  animation="property: position; from: -6 3 -5; to: -6 3.5 -5; loop: true; dir: alternate; easing:linear;dur:1000"
>
</a-text>

 // buton2
<a-text
  id="joinRoom"
  width="10"
  align="right"
  raycaster="objects: .collidable; far: 8"
  position="6 0.7 -5"
  cursor="rayOrigin: mouse;maxDistance: 30; fuse: true"
  value="joinroom"
  geometry="primitive:plane"
  animation="property: position; from: 6 0.7 -5; to: 6 0.9 -5; loop: true; dir: alternate; easing:linear;dur:1000"
></a-text>

1 Ответ

1 голос
/ 24 апреля 2019

Поместите компонент cursor:

  • на сцену: <a-scene cursor="rayOrigin: mouse">
  • на любой элемент, являющийся начальной точкой луча:

    <a-camera>
      <a-entity cursor></a-entity>
    </a-camera>
    
    <a-entity id="vive-controller" cursor></a-entity>
    

В противном случае лучи могут проходить сквозь многие "стоящие" сущности и приводить к множеству click событий.

Правильно работающая скрипка здесь ,
скрипка с курсорами на текстах (как в вопросе) здесь .

...