Курсоры

Курсоры

Курсор обеспечивает непрерывную обратную связь в зависимости от того, где гарнитура считает, что текущее внимание пользователей находится в данный момент времени. Обратная связь с курсором включает в себя область, голограмму или точку в виртуальной среде, реагирующей на входные данные. Несмотря на то, что курсор представляет собой цифровое представление того, где устройство понимает внимание пользователя, это не то же самое, что и определение намерений пользователя. Обратная связь с курсором также позволяет пользователям узнать, какие системные ответы следует ожидать. Вы можете использовать обратную связь, чтобы сообщить о своем намерении устройству, что повышает доверие пользователей.

Есть три вида курсоров: палец, луч и взгляд головы. Эти указатели работают с различными модалями ввода в HoloLens, HoloLens 2 и иммерсивными гарнитурами. Ниже приведены инструкции по выбору типа курсора для каждого типа гарнитуры и модели взаимодействия. В наборе средств Смешанная реальность (MRTK) мы создали модули курсоров перетаскивания, которые помогут вам создать правильный интерфейс.

Поддержка устройств

Компонент HoloLens (1-го поколения) HoloLens 2 Иммерсивные гарнитуры
Курсор пальца ✔️
Курсор Луча ✔️ ✔️
Курсор взгляда на голову ✔️ ✔️ ✔️

Курсор пальца

Курсор пальца доступен только на HoloLens 2 для улучшения режима взаимодействия "прямой манипуляции с руками". Мы прикрепили кольца к кончикам обоих индексных пальцев, чтобы лучше понять, где указывает палец. Размер кольца основан на близости пальца к поверхности пользовательского интерфейса, которая сжимается до небольшой точки, когда палец касается пользовательского интерфейса. Чем ближе палец, тем меньше кольцо.

курсор пальца
Визуальные состояния обратной связи курсора пальца 1: кольцо сжимается до точки. 2. Кольцо выравнивается по поверхности. 3. Кольцо перпендикулярно вектору пальца. 4: Нет кольца.

Курсор Луча

Курсоры лучей прикрепляются к концу далеко указывающих лучей, чтобы позволить манипулировать объектами, которые находятся вне досягаемости рук. В иммерсивных гарнитурах лучи снимаются с контроллеров движения и заканчиваются точками курсоров. В HoloLens 2 мы применяем умственную модель этих лучей контроллера движения и разработанные лучи рук, которые происходят от ладоней и заканчиваются на кольцевых курсорах, которые соответствуют курсорам пальцев, используемым в прямой манипуляции.

Контроллер курсора ray
Лучи курсоров контроллеров движения

Рука курсора Луча
Лучи курсоров рук



Курсор взгляда на голову

Курсор направления головы — это точка, которая прикрепляется к концу невидимого вектора направления головы, который использует положение и поворот головы к точке. Для выполнения действий этот указатель мыши связан с различными входными данными фиксации, такими как касание воздуха, голосовые команды, остановка и нажатие кнопки. В HoloLens 2, взгляд на голову лучше всего связан с любыми входными данными фиксации, которые не касаются воздуха, так как будет конфликт взаимодействия между краном воздуха и дальними лучами рук.

Рука курсора взгляда головы
Курсор взгляда головы с жестом руки

Голос курсора взгляда головы
Курсор взгляда головы с голосовой командой



Рекомендации по настройке курсора

Если вы хотите настроить поведение и внешний вид курсора, ниже приведены некоторые рекомендации по проектированию.

Масштаб курсора

  • Курсор не должен превышать доступные целевые объекты, что позволяет пользователям легко взаимодействовать с содержимым и просматривать его.
  • В зависимости от создаваемого интерфейса масштабирование курсора по мере просмотра пользователем также является важным фактором. Например, когда пользователь выглядит дальше в вашем интерфейсе, курсор не должен стать слишком маленьким, чтобы он потерялся.
  • При масштабировании курсора рассмотрите возможность применения к нему мягкой анимации по мере масштабирования, чтобы дать ему органические ощущения.
  • Избегайте препятствования содержимому. Голограммы — это то, что делает впечатление запоминающимся, и курсор не должен отбирать их.

Фигура курсора без направления

  • Хотя фигура курсора не существует, рекомендуется использовать ненаправленную фигуру, например торус. Курсор, указывающий в определенном направлении (например, традиционный курсор со стрелкой), может запутать пользователя, чтобы всегда выглядеть таким образом.
  • Исключением из этого является использование курсора для передачи инструкции взаимодействия пользователю. Например, при масштабировании голограмм в ос Смешанная реальность курсор временно включает стрелки, которые указывают пользователю, как переместить руку для масштабирования голограммы.

Внешний вид и ощущение

  • Курсор в форме кольцевой кольцевой фигуры или торус работает для многих приложений.
  • Выберите цвет и фигуру, которые лучше всего представляют создаваемый интерфейс.
  • Курсоры особенно подвержены разделению цвета.
  • Маленький курсор с сбалансированной непрозрачностью обеспечивает информативность, не доминируя в визуальной иерархии.
  • Будьте осведомлены об использовании тени или выделения за курсором, так как они могут препятствовать содержимому и отвлекаться от задачи под рукой.
  • Курсоры должны выравнивать и обнимать поверхности в приложении. Пользователи будут чувствовать, что система может видеть, где они ищут, но и что система знает о своих окружениях. Например, курсор в ос Смешанная реальность выравнивается по поверхностям пользовательского мира, создавая ощущение осведомленности о мире, даже если пользователь не смотрит непосредственно на голограмму.
  • Магнитное закрепление курсора на интерактивный элемент, когда он находится рядом с пользователем, может повысить уверенность в том, что пользователь будет взаимодействовать с этим элементом при использовании действия выделения.

Визуальные подсказки

  • Если ваш интерфейс ориентирован на одну голограмму, курсор должен выровнять и обнять только эту голограмму и изменить фигуру при взгляде на эту голограмму. Это может сообщить пользователю, что голограмма действима и может взаимодействовать с ней.
  • Если приложение использует пространственное сопоставление, курсор может выровнять и обнять каждую видимую поверхность. Это дает пользователям отзывы о том, что HoloLens и ваше приложение могут видеть свое пространство. Это усиливает тот факт, что голограммы реальны и в нашем мире и помогает преодолеть разрыв между реальным и виртуальным.
  • Иметь представление о том, что должен делать курсор, если нет голограмм или поверхностей в представлении. Размещение его на предопределенном расстоянии перед пользователем является одним из вариантов.

Возможные действия

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

Состояние входных данных

  • Мы могли бы использовать курсор для отображения состояния ввода или намерения пользователя. Например, можно отобразить значок, сообщающий пользователю, что система видит состояние руки и что приложение знает, что готовы принять меры.

  • Мы также могли бы использовать курсор, чтобы показать пользователям, что голосовые команды были услышаны системой с помощью мгновенного изменения цвета

  • Следующие состояния курсора можно реализовать различными способами. Эти состояния можно реализовать путем моделирования курсора, например конечного автомата. Пример:

    • Состояние простоя — это состояние, в котором отображается курсор по умолчанию.
    • Состояние готовности — это состояние, когда вы обнаружили руку пользователя в готовой позиции.
    • Состояние взаимодействия — это когда пользователь выполняет определенное взаимодействие.
    • Возможные действия или состояние наведения — это когда вы передаете возможные действия, которые могут выполняться на голограмме.

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



Переход "без курсора"

Проектирование без курсора рекомендуется, если чувство погружения является ключевым компонентом взаимодействия, а при указании взаимодействий (с помощью взгляда и жестов) не требуется большая точность. Система по-прежнему должна соответствовать обычным требованиям курсора: предоставление пользователям непрерывной обратной связи о том, что система понимает их, и помогает им сообщать о своих намерениях в системе. Это может быть достижимо с помощью других заметных изменений состояния.



Курсор в MRTK (набор средств Смешанная реальность) для Unity

По умолчанию MRTK предоставляет префаб курсора (DefaultCursor.prefab), который имеет то же визуальное состояние, что и системный курсор оболочки. Она назначается в профиле ввода данных в MRTK, в разделе "Указатели". Вы можете заменить или настроить этот курсор для вашего интерфейса. Для взаимодействия с входными данными отслеживания глаз MRTK также предоставляет EyeGazeCursor, который имеет тонкий визуальный элемент, чтобы свести к минимуму отвлекающие факторы.


См. также