Функція «Модуляція за прискоренням руки» у Custom Curve

Ілюстрації того, як Модуляція прискоренням руки масштабує швидкість або чутливість, поки рука пришвидшується чи сповільнюється, — див. Посібник.

Без модуляції З модуляцією

Крива прискорення

Без модуляції З модуляцією

Приклад руху вгорі відтворює змах мишею з природним фізичним прискоренням. Його сповільнено на 90 %, щоб було зручніше роздивитися.

Керування

3.0
2.00
1.000

Показники

Швидкість руки
0.0дюйм/с
Прискорення руки
0дюйм/с²
Чутливість, без модуляції
1,04×
Чутливість, з модуляцією
1,04×

Масштабування модуляції за прискоренням руки

Масштабування діє Вимкнено

Для масштабування використано функцію Хілла: вона плавно й без розривів зводить підсилені перехідні процеси з вихідним сигналом. Прискорення входить у неї у квадраті, тож відгук однаковий по обидва боки від нуля, як показує пунктирна половина. Масштабувати при визначає, який напрямок активний.


Перетворення чутливості з фізичного прискорення

«Модуляція за прискоренням руки» — інструмент для досвідчених користувачів, що дає більше контролю над поведінкою кривої. По суті вона дозволяє перетворенням чутливості, які виконує крива, поводитися по-різному, коли ви пришвидшуєте руку і коли сповільнюєте її. Звичайна крива прискорення реагує лише на швидкість миші, але не на те, як вона її набрала.

Фізичне прискорення руки людини на миші — це перехідний процес — масштабування діє, лише поки рука змінює швидкість, і зникає, щойно рух стає рівномірним.

Що показують графіки

  • Крива прискорення: показано приблизну криву чутливості разом з імітацією фліка, відтвореною сповільнено для наочності. Рух спочатку розганяється повільно, потім швидше, тримається на піковій швидкості 45 дюйм/с і далі так само сповільнюється.
    • за цілі «Швидкість»: крива стискається ліворуч або розтягується праворуч залежно від знака параметра «Масштаб».
    • за цілі «Чутливість»: уся крива піднімається або опускається — знову ж таки залежно від знака параметра «Масштаб».

Важливо розуміти, що це розтягування чи стискання не просто зображує математику, а є нею. Помножити швидкість на коефіцієнт до того, як її прочитає крива, — те саме, що прочитати немодульовану швидкість за кривою, стиснутою на цей коефіцієнт. Цим же пояснюється, чому статична чутливість (або пласка ділянка кривої) майже не реагує в режимі «Швидкість»: стискання зсуває криву вбік, а пласка чутливість однакова і з модуляцією, і без неї.

  • Масштабування модуляції за прискоренням руки: тут показано внутрішню функцію, що зводить фізичне прискорення з вхідним сигналом. Її побудовано за прискоренням, а не за часом, тож уся форма перетворення видна одразу цілком.

Параметри

  • Масштаб & Межа: «Масштаб» визначає, наскільки сильно має розганятися рука, перш ніж почне відбуватися щось помітне. Це чутливість функції до фізичного прискорення вашої руки. «Межа» задає стелю ефекту, до якої відгук наближається, але ніколи її не досягає.
  • Масштабувати при: обирає, чи відбувається масштабування, коли рука пришвидшується або коли сповільнюється.
  • Ціль «Швидкість»: множить швидкість до того, як її прочитає крива. На виході може вийти лише та чутливість, яка вже є в кривій, — досягнута за меншої швидкості руки, ніж зазвичай. Тобто недосяжна жодна чутливість, якої ваша крива ще не задає.
  • Ціль «Чутливість»: множить результат уже після читання кривої. Крива піднімається, а не зсувається, і на короткий час досяжні значення чутливості, яких у кривій немає зовсім.

Індикатор прискорення руки показує те саме в обох випадках, бо вимірюється в будь-якому разі та сама величина, — різниця лише в тому, до чого цю величину застосовано.

Де це відбувається в ланцюжку

Вимірювання береться до кривої прискорення. За цілі «Швидкість» масштабування застосовується до швидкості в цій точці; за цілі «Чутливість» — до чутливості, яку повернула крива, тобто додається до неї.

Два практичні зауваження. Значення «Масштабу» залежить від DPI миші: рекомендується вказати DPI кожної миші на вкладці Пристрої — тоді прискорення вимірюватиметься в реальних одиницях, як у цій візуалізації. По-друге, реальний сигнал миші надто зашумлений, щоб диференціювати його напряму, тому драйвер згладжує швидкість, перш ніж брати швидкість її зміни, — за це відповідає Згладжування виявлення — і цим же пояснюється, чому такого налаштування тут немає: рух на цій сторінці породжується, а не вимірюється, тож згладжувати нічого.

Кілька застосувань

Усе це виникає саме завдяки перехідній модуляції і недосяжне лише звичайною кривою прискорення. Налаштування подано у вигляді Ціль, знак «Масштабу» і Масштабувати при.

  • Ширше «вікно» на килимку для швидких фліків. Швидкість, від'ємний «Масштаб», при «Прискоренні». Ділення швидкості, поки рука розганяється, утримує чутливість нижче за те, що дала б сама лише крива, тож різкий флік проходить по екрану менше за того самого розмаху по килимку. Флік можна кидати різкіше, маючи запас до перельоту.
  • Підвищена чутливість лише тоді, коли висока швидкість і прискорення збігаються. Швидкість, додатний «Масштаб», при «Прискоренні». Стискання кривої ліворуч робить її верхнє плато досяжним уже за меншої швидкості руки, але тільки поки рука енергійно набирає швидкість. Пресет 10, Modulated Jump побудовано саме так: «Масштаб» 1 і «Межа» 4 поверх ступінчастої кривої. Завдяки цьому прискорення не зачіпає жодних рухів, окрім гранично різких розворотів на 180°.
  • Перетворення чутливості лише під час фліка. Чутливість, додатний «Масштаб», при «Прискоренні». Оскільки масштабування спрацьовує вже після кривої, саму криву можна лишити пласкою: будь-які рівномірні швидкості тоді не масштабуються і читаються як одна-єдина чутливість, а динамічний флік піднімає її на весь час перехідного процесу. Пресет 17, модуляція чутливості прискоренням руки робить саме це за «Масштабу» 1 і «Межі» 2,5.
  • Сильне згладжування без звичної для нього «затримки руху». Швидкість, від'ємний «Масштаб», при «Сповільненні». Згладжування тремтливого сигналу миші підвищує чутливість, поки ви сповільнюєте руку, адже згладжування усереднює з попередніми значеннями, — це і є так званий ефект «затримки руху». Ділення швидкості всередині кривої прискорення під час сповільнення руки знижує чутливість швидше, ніж це зробив би сам лише рух, повністю знімаючи недолік і зберігаючи зменшене тремтіння.
  • Рівніша чутливість під час швидкого супроводу ліворуч-праворуч. Швидкість, від'ємний «Масштаб», при «Прискоренні». Кожна зміна напрямку — це помітне прискорення, тож ділення спрацьовує на кожній з них і утримує чутливість там, де інакше вона піднімалася б по кривій прискорення. Виходить динамічне «зміщення» кривої, що з'являється лише за різкого фізичного прискорення і відсутнє за рівномірної швидкості чи м'якших прискорень руки.