В настоящее время я просто использую сообщение WM_MOUSEMOVE, но оно ограничивает движение мыши до максимального разрешения. Итак, каков наилучший способ захвата мыши с помощью Win32 (в окне OpenGl)? Я не хочу использовать freeglut или любую дополнительную библиотеку.Захват движения мыши в win32/Opengl
ответ
Для игр и в реальном времени DirectInput очень подходит, он умеренно прост в использовании.
Это не ядро win32 api, способ получения ввода winapi - это либо GetCursorPos/SetCursorPos, управляемый вашим собственным циклом обновления, поэтому вы запрашиваете и перезагружаете свою собственную частоту.
Или SetCapture, а затем по телефону WM_MOUSEMOVE вы звоните SetCursorPos. Пункт установки курсора pos - дать место для перемещения, чтобы вы могли получить дельту, сумму, которую перемещал курсор с момента последнего обновления, а затем вернули курсор в центр вашего окна.
Если вы хотите, чтобы иметь возможность фиксировать события мыши после того, как мышь существует окно, то вы можете посмотреть в SetCapture функции
Если ваша проблема в том, что вы хотите, чтобы сделать игру FPS и вы хотите, чтобы ваш персонаж мог вращаться в непрерывном движении, тогда вы хотите установить положение мыши в центр окна после каждого события перемещения мыши и ввода ввода в зависимости от разницы между положением курсора при событии перемещения мыши и в центре экрана. Чтобы установить положение мыши, вы можете использовать функцию SetCursorPos.
Ваши лучшие ставки должны либо использовать DirectInput (что может быть немного больно настроено), либо RawInput.
Существует довольно обширный пример, доступный на странице Using RawInput (см. Пример 2).
- 1. Захват движения мыши
- 2. Захват движения мыши
- 3. Захват движения мыши
- 4. Захват движения в Python
- 5. Моделирование движения мыши мыши
- 6. Захват движения мыши, когда мышь нажата в Java
- 7. Движения мыши в wpf
- 8. захват мыши с Xlib
- 9. Захват действий мыши
- 10. Захват мыши
- 11. Имитация движения мыши (C#)
- 12. SendInput - (имитация движения мыши)
- 13. Оптимизация движения мыши
- 14. сглаживание движения мыши
- 15. python случайные движения мыши
- 16. Отслеживание движения мыши
- 17. Захват мыши в Firefox
- 18. Захват мыши левой кнопкой мыши
- 19. Получение координат изображения движения мыши
- 20. обнаруживая Горизонтального колесо мыши движения
- 21. Проблемы с изменением движения мыши
- 22. Slick2D не обнаруживает движения мыши
- 23. Получите расстояние от движения мыши
- 24. Захват пользователя щелчком мыши?
- 25. Захват и выбор мыши
- 26. захват Второе движение мыши
- 27. Захват курсора мыши в GLFW
- 28. Моделирование движения мыши в WPF в тесте
- 29. Рассчитать изменение движения мыши в угле
- 30. Эмуляция движения мыши Python в играх