Я работаю над игрой от первого лица на Java и пытаюсь заставить работать 3D-движение.
Моя проблема в том, что я хотел бы зафиксировать движение мыши, но держать мышь внутри окна. После того, как я зафиксировал движение мыши, я решил, что лучший способ удержать мышь в моем окне — это центрировать мышь в окне после перемещения с помощью Robot.moveMouse(x,y). Это отлично работает, однако движение робота вызывает событие в моем окне, которое затем интерпретируется как обычное событие и, таким образом, перемещает моего персонажа в мире.
Я пробовал различные схемы сохранения состояния и игнорирования движений, пока я не окажусь в центре, но все они кажутся привередливыми и не совсем определяют, какие события контролируются пользователем или роботом.
Есть ли простой способ определить, что движение мыши исходит от робота?
Возможно, есть более простой способ решить мою проблему, которую я упускаю из виду?