Keymap Labs рассматривает браузер как уровень наблюдения, а не как прямое лабораторное оборудование. Каждая диагностика начинается с конкретного события или API веб-платформы, вычисляет ограниченный результат локально и указывает, какие части пути ввода остаются невидимыми.
Граница измерения
Наблюдаемый путь начинается после нескольких физических и программных уровней: переключателя или сенсора, электроники устройства, прошивки, проводной или беспроводной передачи, стека ввода операционной системы и иногда драйвера или ремаппера. Затем браузер применяет собственное сопоставление, правила конфиденциальности, планирование и объединение событий, прежде чем JavaScript получит данные.
Поэтому наши инструменты используют такие фразы, как «сообщаемая ось», «доставленное событие» и «частота, наблюдаемая браузером». Они не претендуют на сертификацию частоты опроса USB, задержки физического переключателя, внутреннего износа или полной матрицы клавиатуры.
Инструменты для геймпадов используют стандартный Gamepad API, предоставляемый через navigator.getGamepads(). Инструменты для клавиатуры и мыши используют сфокусированные события DOM: клавиатуры, указателя, клика и колеса. Диагностика частоты опроса фиксирует время доставленных движений указателя с помощью performance.now(). Это задокументированные веб-интерфейсы, но их реализация зависит от браузера и операционной системы.
Локальная обработка и конфиденциальность
Обработка необработанного ввода происходит внутри страницы. Оси контроллера, состояния кнопок, последовательности клавиш, движения указателя и временные шкалы кликов не отправляются в Keymap Labs. Учетная запись не требуется. Обычные записи доступа к веб-серверу отделены от диагностического ввода и регулируются политикой конфиденциальности.
Поскольку инструментам для клавиатуры нужны только изолированные коды, пользователям рекомендуется не вводить пароли или личный текст. Тест может прослушивать ввод только тогда, когда страница активна, и не может считывать ввод, набранный в другом приложении.
Статистика центра контроллера
Для проверки дрифта стика страница записывает пары осей в течение пяти секунд, пока контроллер находится в покое. Радиальное расстояние каждого образца составляет sqrt(x² + y²). Отчет включает среднее расстояние, максимальное расстояние и вариативность. Пороговые значения классификации являются редакционными оценочными диапазонами, а не допусками производителя.
Пять секунд балансируют удобство использования с достаточным количеством кадров, чтобы избежать суждения по одной десятичной дроби. Повторные запуски остаются необходимыми, так как контакт с рукой, направление возврата, подключение и калибровка могут изменить наблюдаемый центр.
Наблюдение за клавиатурой
Страницы клавиатуры различают физические KeyboardEvent.code и интерпретируемые KeyboardEvent.key. Физические коды предпочтительнее для обсуждения игровых раскладок, поскольку они определяют положение независимо от активной раскладки символов.
Активный набор строится на основе событий нажатия и отпускания клавиш, доставленных в сфокусированное окно. Он очищается при потере фокуса, чтобы избежать отображения устаревших клавиш, когда страница пропускает отпускание. Сочетания клавиш, зарезервированные браузером или операционной системой, исключаются из строгих выводов.
Страница проверки гостинга тестирует выбранные комбинации. Их прохождение не доказывает NKRO по всей матрице. О сбое сообщается как о наблюдаемом отсутствующем или неожиданном коде, и его следует повторить с измененным порядком нажатия и в другой среде.
Интервалы кликов мыши
Диагностика двойного клика записывает время между последовательными событиями клика по сфокусированной цели. Порог по умолчанию 80 ms — это выбор для отсеивания медленных преднамеренных кликов, а не окно двойного клика операционной системы и не измерение физического дребезга контактов.
Намерение нельзя определить по таймингу. Быстрые преднамеренные клики могут быть помечены. Более веские доказательства поступают из повторяемых близких интервалов, когда пользователь намеренно разделяет физические действия, что подтверждается при другом подключении или системе.
Частота событий указателя
Лаборатория частоты опроса использует метки времени доставленных событий движения указателя. Наблюдаемая частота рассчитывается по количеству за охваченный интервал меток времени. Медианные и 95-процентные интервалы описывают типичную доставку и более длительные задержки.
Браузеры могут объединять движения указателя, а планирование основного потока, обновление дисплея, состояние питания и скорость движения влияют на результаты. Лаборатория предназначена для относительных сравнений и обнаружения большой нестабильности, а не для сертификации частоты прошивки.
Константы чувствительности
Конвертер чувствительности использует документированные горизонтальные константы yaw, чтобы сохранить смоделированный cm/360 от бедра. Формула, поддерживаемая игра и результат показаны вместе.
eDPI отображается только как удобство для конкретной игры. Модели с прицеливанием, зумом, относительным FOV и дистанцией до монитора выходят за рамки этой конвертации. Если обновление игры меняет масштабирование ввода, константа и объяснение пересматриваются вместе.
Язык результатов
Мы разделяем три уровня:
- Наблюдение: то, что эта страница получила в данном сеансе.
- Интерпретация: что обычно означают закономерности внутри указанной границы.
- Диагноз: заключение, которое обычно требует сравнения или внешнего осмотра.
Интерфейсы инструментов могут предоставлять оценочные показатели, такие как «узкий», «умеренный» или «высокий», но сопроводительный текст никогда не превращает браузерный замер в вердикт по аппаратному обеспечению, который мы не поддерживаем.
Верификация и исправления
Поведение, зависящее от оборудования, требует физических тестовых устройств и контролируемых сравнений, поскольку синтетические события не могут достоверно воспроизвести полный путь ввода. Изменения в расчетах требуют повторяемых проверок и пересмотра методологии.
Существенные изменения пороговых значений, формул или констант поддерживаемых игр отражаются в соответствующей методологии и исследовательских заметках. Каждая заметка содержит дату обновления, чтобы старые выводы не преподносились молча как неизменные факты.
Такая консервативная формулировка — часть продукта. Меньшее, но честное измерение полезнее, чем громкое заявление, которое браузер не может подтвердить.