Спасибо за вашу помощь!
Я написал решение.Поэтому, если вы вызываете метод перемещения мяча из игрового цикла lwjgl, очевидно, что он перемещается в каждом кадре.(code 1)
Но если вы вызываете поток перед игровым циклом и в цикле визуализируете его, он работает нормально.(code 2)
Код 1:
while(!glfwWindowShouldClose()) {
glfwPollEvents();
glClear(GL_COLOR_BUFFER_BIT);
ball.move();
render();
glfwSwapBuffers(window);
}
Код 2:
new Thread(new Runnable() {
@Override
public void run() {
while(!glfwWindowShouldClose()) {
ball.move();
try {
Thread.sleep(1000/fps);
} catch(Exception e) {}
}
}
}).start();
while(!glfwWindowShouldClose()) {
glfwPollEvents();
glClear(GL_COLOR_BUFFER_BIT);
render();
glfwSwapBuffers(window);
}
Убедитесь, что вы не вызываете никакие другие методы в потоке, иначе это 'прорвусь.