Я начинаю с PyGame. Прибывая с (некоторым) знанием Единства, я использую для умножения своих сумм движения на Time.timeDelta, который нормализует скорость движения. Однако, если я делаю это:Обеспечение постоянной скорости анимации независимо от FPS в PyGame
delta = clock.tick(x)
circle.move(delta)
pygame.display.flip()
Если я время, как долго он принимает круг, чтобы добраться до места назначения, я буду получать противоречивые результаты для разных значений х. при 10 FPS он занимает примерно 5,75 секунды, тогда как при 60 - более 8 секунд.
Как я могу обеспечить свою скорость движения и получить хорошую дельта?
Умножить движения и анимации на сколько времени прошло с момента последнего кадра, и убедитесь, что таймер достаточно точным, чтобы сделать его осмысленным, чтобы сделать это (Pygame должен быть один, который достаточно хорошо) HTTP : //gafferongames.com/game-physics/fix-your-timestep/ http://www.pygame.org/wiki/ConstantGameSpeed?parent=CookBook – Patashu
@ Паташу Извините, но эта вещь немного сложна для меня понять. Можете ли вы набросать решение, примерно? – cwj
Если связанная информация «слишком сложно для вас понять», я предлагаю вам медитировать на ней, пока это не так, потому что это очень важно понять. Или вы можете задать конкретные вопросы, которые у вас есть. – Patashu