Если коротко:

Ёмкостный датчик определяет присутствие пальца на кнопке, стике или площадке, даже если пользователь её не нажал. По этим сигналам приложение выбирает позу виртуальной кисти, но не получает точные координаты каждого сустава.

VR-контроллеры могут различать нажатие кнопки и простое касание ёмкостного сенсора. Устройство понимает, лежит ли большой палец на стике и находится ли указательный на триггере, ещё до механического срабатывания.

Как из касаний получается поза руки

Приложение получает несколько дискретных или плавных сигналов и выбирает подходящую анимацию. Если палец касается триггера, указательный палец аватара слегка согнут; если убран — выпрямлен. Аналогично меняется большой палец.

Это правдоподобная аппроксимация, а не полный захват движения. Система не видит точное положение фаланг и может только предполагать позу между измеряемыми состояниями.

Отличие от hand tracking

Оптический hand tracking оценивает скелет кисти по камерам и работает без контроллера. Ёмкостное распознавание использует датчики самого контроллера и сохраняет физические кнопки, триггеры и тактильную отдачу. Эти методы подходят разным сценариям.

Что учитывать разработчику

Набор касаний отличается между устройствами. Логику действий нельзя привязывать к декоративной позе конкретной модели. Через OpenXR приложение описывает действия, а профиль взаимодействия связывает их с органами управления доступного контроллера.

Критическое действие должно иметь явное подтверждение нажатием или жестом. Простое касание легко возникает случайно, когда пользователь меняет хват.

Калибровка анимации

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

Ёмкостные датчики дают недорогой способ оживить аватар и добавить состояния ввода. Их сила — в устойчивом физическом контроллере; ограничение — в небольшом числе реально измеряемых признаков.

Поделиться:TelegramВКонтакте

Источники

  1. Khronos — OpenXR Input
  2. Valve — Index Controllers