Я использую SDK Corona с Box2D-движком, и я пытаюсь создать игру в стиле Flappy Bird, чтобы познакомиться с физическим движком. Я попытался увеличить плотность главного героя, увеличив гравитацию, изменив масштаб этапа физики и т. Д., Но главный герой все еще чувствует себя «плавающим».Я играл с различными физическими настройками, но объекты все еще чувствуют себя слишком «плавающими»
Увеличение силы тяжести было настолько близко, насколько я мог чувствовать себя правильно, но все еще есть проблемы. Если пользователь быстро набирает экран, импульс быстро нарастает, и персонаж улетает с экрана с высокой скоростью. Вот мой код прямо сейчас:
physics.setGravity(0, 60) --default is 9.8
function screenTap()
flappy.isFixedRotation = true
flappy:applyLinearImpulse(0, -300, flappy.x - 3, flappy.y)
flappy.isFixedRotation = false
end
В оригинальной игре Flappy Bird, это, кажется, нормальная гравитация, но быстрые краны на экран не будут делать птицу взлететь слишком быстро. У него почти было ощущение чего-то «тяжелого», как шар для боулинга, но, очевидно, в этом мире объекты всех масс падают с одинаковой скоростью. У меня нет большого опыта работы с физическими двигателями, поэтому я буду благодарен за любые предложения.
Просто ограничьте вертикальную скорость до некоторой разумной величины. – nekavally
В птице птицы, независимо от вертикальной скорости птицы, всякий раз, когда на экране он постучал, вертикальная скорость птицы установлена положительно/вверх. Если бы вы ограничивали скорость и продолжали ускорение, и птицу нужно было постукивать, а ускоряясь вниз, для ее взлета потребовалось бы несколько кранов. –
Это имеет смысл, я удивлен, что не осознал этого. Думаю, мне предстоит пройти долгий путь, чтобы познакомиться с физическими двигателями. Благодаря! –