В настоящее время я работаю над прорывной игрой, и я застрял в математической проблеме. Вот сценарий.Базовые математические шкалы прорыва
Мяч имеет горизонтальную скорость, называемую bxspd. Мяч имеет координату X, названный bx. Мяч имеет максимальную скорость, названную bspd. Летучая мышь имеет координаты x, называемые px.
Когда мяч сталкивается с летучей мышью, он должен отскакивать в горизонтальном направлении относительно положения летучей мыши. Таким образом, другими словами:
// Событие столкновения bxspd = bx - px.
Таким образом, когда мяч попадает в левую сторону бита, мяч отскакивает влево. Чем дальше она находится слева от центра летучей мыши, тем быстрее горизонтальная скорость становится слева.
Проблема с этим - моя летучая мышь имеет ширину 50 с каждой стороны от центра. Как увеличить масштаб до максимальной скорости мяча? Таким образом, другими словами, если он попадает в крайний левый угол бита, bxspd становится -2 вместо -50?
С уважением, Claris
При написании этого вопроса мне как-то удалось это выяснить. Происхождение px лежит слева от летучей мыши, поэтому я разработал следующую формулу: bdx = ((bx - (px + (pwidth/2)))/(pwidth/2)) * bspd; – NodziGames
Вы можете добавить свой отзыв. – mplungjan
Благодарим за предложение mplungjan. Я думаю, было бы выгоднее написать формулу в качестве ответа на вопрос, чтобы люди могли использовать ее в качестве справочного материала, если у них есть тот же вопрос. – NodziGames