Как я могу изменить положение курсора мыши в OpenGL / Glut?

StackOverflow https://stackoverflow.com/questions/784322

  •  16-09-2019
  •  | 
  •  

Вопрос

Я пишу простую игру, и я собираюсь использовать мышь для управления камерой (используя GlutPassiveMotionFunc).

Я собираюсь изменять высоту тона и рыскание, основываясь на разнице между обратными вызовами мыши, однако я думаю, что было бы хорошей идеей "принудительно" возвращать мышь обратно в центр экрана каждый раз, когда они пытались ее переместить.Таким образом, их курсор не будет находиться на краю экрана, и они не смогут двигаться дальше в этом направлении.

Какую команду Glut / OpenGL я могу использовать, чтобы принудительно изменить положение мыши?

Это было полезно?

Решение

Использование glutWarpPointer(x, y), где x и y (оба ints) выражены в пикселях (относительно начала координат окна).Например:

glutWarpPointer(windowWidth / 2, windowHeight / 2);

Другие советы

Извините за поздний ответ.Я имел в виду, что после того, как я использую функцию glutWrapPointer, если я распечатываю значения x и y, я не могу уловить изменение курсора, и он всегда выводит значения внутри функции glutWrapPointer, которую я предоставил.Что я сделал, чтобы исправить это, так это переместил эту функцию внутрь функции Animate в OpenGL, и она работала нормально.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top