Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2013, 01:40   #1
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию ускорение курсора мышки

Скажите, а можно ли отключать ускорение курсора какой-нибудь одной простой функцией? Хочу чтобы в моем приложении ускорение курсора не работало. Пробовал сделать свой курсор, в виде объекта, и передвигать его, устанавливая курсор Винды в центр экрана, затема вычитал координаты после перемещения, таким образом, узнавал куда двигается курсор, и двигал свой объект на основе этих данных, но ускорение все равно ощущается.

Для тех, кто не понял, что за ускорение: если вы проведете мышкой 1 см, медленно, указатель переместится на малую дистанцию, но если вы эти же 1 см переместите очень резко, будет ускорение, и курсор перепрыгнет в несколько раз дальше.
Артэс вне форума Ответить с цитированием
Старый 12.06.2013, 03:16   #2
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

жесть какая :D
Ты лучше скажи, зачем такое могло понадобиться?

Upd: неправильно двигал объект значит, если ускорения чувствовалось.
Но в любом случае, это такие костыли... :D
TwiX вне форума Ответить с цитированием
Старый 12.06.2013, 03:33   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

смотрите свой драйвер мыши.
у меня скорость не имеет значения.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.06.2013, 08:29   #4
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию

Все зависит от настройки в Винде.

Панель управления -> Мышь -> Параметры указателя, и там checkbox "Включить повышенную точность установки указателя".

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

Зачем мне это? Для игры от 1-го лица, для управления видом мышкой, чтобы движение было равно движению мышки, без ускорений или замедлений "КПД" (поиграйтесь с той галочкой в настройках, поймете).
Артэс вне форума Ответить с цитированием
Старый 12.06.2013, 09:34   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

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

PS: у меня мышь от этого лишь меняет свое разрешение работы.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.06.2013, 10:11   #6
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию

Хех, нельзя? А чем ускорение мышки важнее например, разрешения экрана? В ручную разрешение экрана мы не меняем под игру, игра сама меняет его. Разрешение экрана менять игрой можно, а выкл / вкл ускорение нельзя что ли?

Где-то же этот параметр хранится, как его изменить то? И потом, через WinApi можно менять чувствительность мышки? Если да, то почему бы и этот параметр не изменить?
Артэс вне форума Ответить с цитированием
Старый 12.06.2013, 18:38   #7
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
наверно где то тут.
главное восстанавливать не забывайте тогда(причем и при сворачивании).

еще одна причина против, если у пользователя мышь себя ведет так, значит он привык к этому.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 14.06.2013, 09:35   #8
Артэс
Форумчанин
 
Регистрация: 05.06.2007
Сообщений: 529
По умолчанию

Благодарю за информацию.

Да дело в том, что в том же Квэйк 3 Арена, в игре отсутствует ускорение мыши, даже если в Винде оно включено, и игрокам как-то пофиг, есть у них ускорение или нет. В итоге того, после привыкания к управлению в игре, если добавить влияние ускорения на управление видом в игре, становится не так удобно.

Глянув исходники Квэйка, там я нашел 2 функции управления мышкой. Первая хитрая, через функции со словами DirectInput и iDirectInput берутся данные о мыши, похоже в обход настроек. Вторая простая, как у меня.

Получается Квэйк 3 Арена еще и DirectX использует, или эти функции не имеют отношения к DirectX ?
Артэс вне форума Ответить с цитированием
Старый 14.06.2013, 10:02   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от Артэс Посмотреть сообщение
Благодарю за информацию.

Да дело в том, что в том же Квэйк 3 Арена, в игре отсутствует ускорение мыши, даже если в Винде оно включено, и игрокам как-то пофиг, есть у них ускорение или нет. В итоге того, после привыкания к управлению в игре, если добавить влияние ускорения на управление видом в игре, становится не так удобно.

Глянув исходники Квэйка, там я нашел 2 функции управления мышкой. Первая хитрая, через функции со словами DirectInput и iDirectInput берутся данные о мыши, похоже в обход настроек. Вторая простая, как у меня.

Получается Квэйк 3 Арена еще и DirectX использует, или эти функции не имеют отношения к DirectX ?
квейк использует директ икс как бы.
и через DirectInput получает чистые перемещения мыши, без всяких обработок.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 16.06.2013, 06:10   #10
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

Ты делаешь 3д-игру без директИкса, заменяю курсор своим объектом и меняя костылями разрешение экрана?оО
TwiX вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение текста при неведении курсора мышки Алексей_Т JavaScript, Ajax 1 06.03.2012 02:14
Кооридинаты мышки, курсора (вне формы) ShamanK C# (си шарп) 4 02.02.2012 15:18
движения курсора мышки в противоположном направлении. Pein95 Общие вопросы Delphi 2 31.12.2011 03:11
Замена курсора мышки в графическом режиме JeyKip Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 30.10.2010 22:07
уменьшается прозрачность при наведении курсора мышки tanushecka JavaScript, Ajax 4 16.05.2009 01:55