Как получить координаты клика на rawImage в Unity с помощью Hololens? - PullRequest
0 голосов
/ 14 февраля 2019

Итак, сейчас у меня есть эта иерархия: Куб Холст RawImage

И я хочу получить координаты моегонажмите на rawimage, но я не знаю, с чего начать прямо сейчас.

  1. В HoloToolkit есть GazeManager, где выполняется raycast и имеется свойство HitPosition.Поэтому, используя GazeManager.Instance.HitPosition , я должен получить позицию клика в мире.Но как мне добраться от этого до координат на холсте?
  2. Я могу вызвать OnInputClicked (InputClickedEventData eventData) , если я использую IInputClickHandler .Но из eventData я не получу информацию о клике.
  3. Я нашел это , но не могу перенести его в мои потребности.Потому что у его eventData есть больше опций.
  4. Я думаю, что не будет разницы, чтобы получить клик от необработанного изображения, холста или куба, потому что они имеют одинаковый размер.

1 Ответ

0 голосов
/ 14 февраля 2019

Может быть, вам нужно изменить свой подход, я могу найти некоторые решения для этого.

  1. Измените Canvas с Overlay на World Space и Raycastщелчок, чтобы получить нормальную позицию, а не Canvas позицию.

  2. Если у вас Canvas в Overlay, я думаю, что Input.mousePosition прямо пропорционально RectTransform.position, поэтому ваша позиция.

Для обоих вы можете использовать IPointerClickHandler , чтобы обнаружить щелчок по любому элементу пользовательского интерфейса.

...