Кажется, в X11 с чувствительностью мыши происходит какая-то неразбериха, каждый понимает под разными понятиями что-то своё.
Вот что я понимаю, надеюсь что правильно:
- DPI - Количество опросов сенсора мыши за единицу времени
- Чувствительность - насколько каждый опрос влияет на положение курсора
- Ускорение - дополнительное движение курсора в зависимости от скорости движения мыши по всяким сложным моделям
Мне нужна очень высокая точность, поэтому «ускорение» (согласно вышеуказанной терминологии) было вырублено под корень, потому что нафиг не надо, мне нужна высокая точность, а не ощущение, что с моей мышкой что-то не так.
На моей мышке есть 4 режима DPI:
- Очень мало опросов в секунду (сотня от силы)
- Среднее количество опросов в секунду
- Много опросов в секунду
- Дофига опросов в секунду
И тут возникает проблема: приходится использовать очень малое количество опросов, потому что все остальные режимы настолько быстрые, что от малейшего прикосновения к мыши, курсор летает по экрану со скоростью, значительно превышающей скорость света.
Но это малое количество опросов сенсора мыши очень больно чувствуется: я могу двигать мышь на доли миллиметров (для меня вполне ощутимое расстояние), и курсор не двигается вообще.
Он двигается очень дёрганно.
Я прямо вижу, насколько «блочно» курсор двигается.
Я двигаю мышь, а курсор будто бы snap’ится к определённым точкам.
Это происходит из-за малого количества опросов сенсора мыши.
В играх, наводиться на противника в пяти километрах от меня - невозможно.
Вот прицел на 2 пикселя справа от головы противника, двигаю мышь на долю миллиметра влево - прицел всё так же на 2 пикселя справа.
Двигаю ещё чуть-чуть - и прицел улетает на 10 пикселей влево.
То есть прицелиться нормально - невозможно.
Опять же - проблема в частоте опроса сенсора мыши.
Очевидное решение - повысить частоту опроса сенсора мыши (DPI) до максимума, чтобы использовать свою мышь по-полной (деньги же не за 10 опросов в час уплачены) а чувствительность мыши в игре (напоминаю мою терминологию, чувствительность - это то, насколько сильно влияет движение сенсора на курсор) установить что-то типа 0.001. Ещё желательно включить «прямое подключение к мыши» если это игра на движке Source.
И да, в игре это чувствуется отлично, нужно лишь немного привыкнуть - как сразу появляется ощущение лёгкости, все движения очень плавные. Можно спокойно «охотиться за пикселями», «сопровождать» головы противников в пяти километрах от себя.
Но стоит открыть меню или свернуть игру - как мышь начинает нарушать законы физики и метаться от одного края экрана до другого за доли секунд.
Очевидное решение - уменьшить чувствительность мыши (не забываем терминологию) в X11.
А вот фиг.
На все поиски в интернете, поисковики предлагают абсолютно рандомные решения, зачастую это работа с «ускорением» (не забываем терминологию), которое просто не совместимо с понятием «точность», потому что делает скорость курсора нелинейной.
Решения по типу изменить параметр «Device Accel Constant Deceleration» неактуальны уже как много лет, либо с моей мышью что-то не так (Logitech G102). И звучит как-то очень сложно.
Уменьшить «чувствительность мыши» помогает только одно решение:
$ xinput set-prop "моя-мышь" "Coordinate Transformation Matrix" $sensivity 0 0 0 $sensivity 0 0 0 1
И по-началу кажется, что вот оно - решение.
Вот только это напрочь ломает захват мыши в программах по-типу Blender или даже на сайте по проверке DPI: https://mousedpianalyzer.com
Захват мыши сначала работает, но стоит отпустить ПКМ - как курсор отправляется в левый верхний угол.
А если чувствительность мыши наоборот увеличена - то в правый нижний угол.
И тут я не знаю что делать. Хочу просто спросить вас, кто шарит, что можно сделать.
Мои мысли - всё-таки включить «ускорение», и как-то сделать его линейным, чтобы через ускорение мыши менять «чувствительность», хотя далеко не одно и то же.
Но заранее подозреваю, что вариант хрень полная.
Либо, это нерешаемая проблема, потому что когда программы пытаются захватить курсор - они считывают чуть ли не аппаратно информацию с сенсора, в обход установленного параметра «Coordinate Transformation Matrix». И я понять не могу - за это какая-то кривая библиотека отвечает, или все разработчики в мире разом забыли, что существует понятие «чувствительность мыши»?
В общем, прошу, напишите какой-нибудь более менее точной информации по этой теме, и как добиться того, чего я хочу: медленные движения при максимальном DPI, но без проблем с захватом курсора.