Анимация заикается в движке 2D-рендеринга Java, когда объект движется быстро

#java #graphics #2d #game-engine #graphics2d

Вопрос:

Я делал простую игру в движке 2D-рендеринга Java и наткнулся на проблему, когда, если объект движется достаточно быстро, анимация будет заикаться каждые пару секунд или около того. Я хочу сделать его более плавным, чтобы анимация не казалась некачественной.

Это мой основной метод запуска класса:

 @Override public void run() {  this.requestFocus();   long lastTime = System.nanoTime();  double amountOfTicks = 60.0;  double ns = 1000000000 / amountOfTicks;  double delta = 0;  long timer = System.currentTimeMillis();  int frames = 0, ticks = 0;   long renderLastTime = System.nanoTime();  double amountOfRenders = 60;  double renderNs = 1000000000 / amountOfRenders;  double renderDelta = 0;   while (isRunning) {  long now = System.nanoTime();  delta  = (now - lastTime) / ns;  lastTime = now;  while (delta gt;= 1) {  tick();  ticks  ;  delta--;  }   now = System.nanoTime();  renderDelta  = (now - renderLastTime) / renderNs;  renderLastTime = now;  while (isRunning amp;amp; renderDelta gt;= 1) {  render();  frames  ;  renderDelta--;  }   if(System.currentTimeMillis() - timer gt; 1000) {  timer  = 1000;  FPS = frames;  UPS = ticks;  frames = 0;  ticks = 0;  }  }  stop(); }  

Если вам нужен еще какой-либо код, пожалуйста, прокомментируйте.

Пожалуйста, помогите мне, чтобы я мог сделать эту игру более плавной!

С уважением,
Юлекпл

Комментарии:

1. Похоже, вы используете режим ожидания «занято». Вместо этого используйте javax.swing. Вместо этого таймер.

2. Как я могу это реализовать? Я новичок в создании игр на Java.

3. Есть множество доступных учебных пособий, просто поищите в Интернете, теперь, когда вы знаете, что искать,

4. Я, кажется, не могу этого понять. Я не знаю, как это сделать. @JustanotherJavaprogrammer

5. Вы нашли какой-нибудь учебник?