Это менее тривиально, чем кажется.Что делает это трудным, так это то, что вы должны заставить свой корабль оказаться в правильном положении со скоростью 0.
Если вы хотите сделать это правильно и не бояться математики, внедрите ПИД-регулятор .Это стандартный способ решения подобных проблем.В промышленности это часто используется для таких вещей, как автопилоты.
Однако есть более простой способ!
Если вы уже движетесь прямо к своей цели, вы можетеРассчитайте, где вы окажетесь, если начали замедляться.Предполагая, что ваше замедление постоянное:
endPos = Position + (Velocity * Velocity) / (2 * deceleration);
endPos - это то место, где вы окажетесь, если начнете торможение сейчас.Вы можете сравнить его с вашей целью, чтобы увидеть, находитесь ли вы в данный момент за пределами или за пределами.
Если вы знаете, что вам нужно затормозить, вы можете точно рассчитать, сколько вам нужно затормозить, чтобы достичь цели, переставивПриведенная выше формула:
deceleration = (Velocity * Velocity) / (2 * (endPos - Position));
Замедление здесь - это «тяга», которая нужна вам, чтобы ваш корабль остановился там, где вы хотите.
Надеюсь, это поможет, пожалуйста, сообщите мне, еслиВы ничего не понимаете или не хотите объяснить, как я пришел к вышеприведенным формулам.