Настройка мыши и игры на оптимальное взаимодействие
реклама
08.09.2010
Всё что ниже - моё очень ИМХО.
Мышь на конкретную игру, а игру на конкретную мышь, настраивается в несколько этапов... цель - настроить всё так, чтобы прицел в игре смещался на 1 пиксель по приходу целого числа отсчетов мыши.
Например, пришел 1 отсчет с мыши - прицел сдвинулся на 1 пиксель. Или пришло 2 отсчета с мыши - прицел сдвинулся на 1 пиксель. т.е. обеспечить передаточное отношение как N к 1 где N целое число отсчетов.
Аалгоритм следующий:
- вычисляем реальное cpi мыши.
реклама
-выбираем в игре объект на 1/3 экрана и определяем сколько в нем "игровых" пикселов.
-зная реальное cpi мыши, определяем сколько отсчетов шлет мышь при смещении прицела от края до края, выбранного ранее объекта.
-зная сколько в объекте игровых пикселов и сколько шлет отсчетов мышь, определяем передаточное отношение движка игры (этот пункт можно пропустить, но можно и посчитать - не пользы для, а любопытства ради)
-изменяя чувствительность мыши, задаваемую в настройке игры, добиваемся, чтобы передаточное отношение было целым числом.
понятия:
- Привычная сенса игрока - это расстояние на которое смещается по ковру мышь, при обороте игроком в игре, на 360 градусов. Привычная потому, что именно с этой сенсой достигается рефлексивное правильное перемещение мыши на цель, без выцеливания. Для того, чтобы это происходило, надо натренировывать эйм на одной и той же сенсе, иногда годами.
-cpi тоже что и dpi, только в отношении мышей более правильное, т.к. мышь шлет в комп не точки и пиксели (dots), а отсчеты т.е. counts.
реклама
-в настройках виндовс движок "скорость указателя" ставится на середину, это обеспечивает передаточное отношение 1 к 1 т.е. 1 отсчет с мыши сдвигает курсор на экране на 1 пиксель.
- галочка "повышенная точность" не должна стоять. Пример игры при настройках выполненных по описываемой методике ссылка на ютуб
итак приступим
1. ставим низкое cpi (400) и большую чувствительность в настройках игры. т.е. изменением чувствительности в игре добиваемся, чтобы при 400cpi, мышь смещалась на коврике на привычное расстояние, при обороте на 360°. - делаем мееедленый поворот на 360° и засекаем путь мыши на коврике. - делаем быстрый оборот 360° и опять засекаем путь мыши. 2. ставим высокое cpi(1800-3600) мыши и низкую чувствительность игры, опять же так, чтобы сохранилась привычная сенса игрока т.е. такая же как в пункте 2. - засекаем путь мыши для быстрого и медленного поворота, как в пункте раз. По результатам делаем выводы, при каких условиях мышь более адекватна т.е. подразумевается, что при разной скорости оборота на 360° мышь может проходить разное расстояние по коврику. Если этого не происходит, т.е. при любых скоростях и сочетаниях cpi и чувствительности в игре, мышь проходит одинаковое расстояние, то радуемся, что программеры написали хороший движок и забиваем на это т.е. нас удовлетворяет любое сочетание чувствительности установленной в игре и cpi мыши.
Если происходит, то выбираем вариант при котором мышь наиболее адекватна. Например движок UT3 так скроен, что при установке низкой чувствительности (ползунок в игре меньше 400) и высоких cpi мыши (больше 2000) начинают "глотаться" отсчеты. Если двигать мышь очень медленно, то прицел вообще стоит на месте. Если сделать оборот на 360гр, с разными скоростями, мышь пройдет по ковру разные расстояния.
3. Измеряется передаточное отношение движка т.е. сколько надо послать отсчетов с мыши в комп, чтобы сдвинуть прицел на 1 пиксель на экране.
-для этого вычисляется реальное cpi мыши. Это довольно просто - зная кол-во пикселов по ширине экрана (рабочий стол виндовс) и засекая расстояние, которое проходит мышь, на рабочем столе виндовз от левого края экрана к правому.
Формула такая: сpi=(M*25.4)/L
где,
cpi(dpi) - текущее разрешение мышки М- количество пикселов на мониторе по горизонтали L - путь мыши в мм, по коврику при перемещении курсора на рабочем столе виндовс от левого края до правого.
Например имеем рабочий стол 1920х1200. двигаем курсор от левого края к правому т.е. на 1920 пикселов и замечаем расстояние которое прошла мышь на коврике, допустим это 60 мм, в этом случае получаем 1920*25.4/60=813 cpi
- вычисляем сколько игровых пикселов приходиться на 1 мм экрана.
Это также легко делается - зная разрешение экрана в игре и его физическую длину в мм. например играем в игру при разрешении 1680 пикселов по ширине. Меряем рулеткой, с точностью до 1мм, расстояние, по ширине экрана, от первого пиксела до последнего (иногда бывают небольшие поля у экранов, они нам естно не нужны) скажем получилось 450мм тогда получим, что на 1мм экрана приходится 3,77пиксела (1680/450)
Далее, выбираем в игре объект примерно 1/3 экрана и тупо меряем линейкой его длину. Зная сколько у нас в 1 мм игровых пикселов (3.77 в примере) получаем длину объекта в игровых пикселах. например, померили, что объект 150мм - значит получим, что в объекте 150*3,77=565 пикселов.
- Определяем сколько отсчетов шлет мышь на длину этого объекта. Для этого поставив прицел на левый край объекта, перемещаем его к правому краю объекта и меряем расстояние, которое прошла мышь по коврику. Зная её истинное cpi, т.е. сколько отсчетов мышь посылает при смещении её на 1 дюйм, вычисляем кол-во отсчетов, которое мышь послала игре, при смещении её на замеренное расстояние. Например, мышь от левого края объекта до правого, прошла 30мм, зная действительное cpi мыши (813 отсчетов на дюйм в наших примерах) получим, что мышь послала в игру 30мм*813/25.4=960 отсчетов
реклама
На этом этапе, имея значение длины объекта в игровых пикселях (565 в нашем примере), мы можем посчитать передаточное отношение движка. Для наших примеров 960/565=1.71
4. учитывая выводы в пп 1-2, т.е. при каких сочетаниях cpi мыши и чувствительности выставленной в настройках игры, мышь более адекватна, выбираем предпочтительное передаточное отношение в виде целого числа, т.е. 1:1 или 2:1 или 1:2, главное, чтобы отношение было целым числом. - подбираем чувствительность в настройках игры, так чтобы передаточное отношение было целым числом например на 2 отсчета мыши сдвиг на 1 пиксель. Это можно посчитать, но потом все равно придется перепроверять "физически", поэтому, имхо, в данном случае проще методом тыка - поменяли чувствительность в игре, посмотрели сколько отсчетов приходит с мыши и так до целого числа отсчетов подгоняем. Для нашего примера мышь должна послать 565*2=1130 отсчетов, при смещении прицела с левого края объекта к правому.
5. Для найденной чувствительности (выставленный параметр в игре) подбираем cpi мыши так, чтобы получить привввычную сенсу игрока.
Нужно понимать, что передаточное отношение не зависит от cpi мыши, т.е. какое бы cpi у мыши мы не выбрали, движок игры все равно будет выполнять сдвиг прицела, на то количество игровых пикселов, которое определяется параметром чувствительности мыши выставленным в игре.
Изменяя cpi мыши мы влияем только на привычную сенсу игрока, т.е. путь по коврику при повороте в игре на 360°.
Хочу заметить, что такая настройка с использованием W-Мouse делается немного проще, так как W-mouse имеет счетчик отсчетов т.е. показывает сколько мышь послала отсчетов при её перемещении, поэтому не надо определять реальное цпи, просто проводим от одной точки до другой и смотрим сколько послала отсчетов мышь. Проект W-Mouse - Проект W-Mouse
реклама
Теги
Лента материалов
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Сейчас обсуждают