Скорость стрелы - PullRequest
       11

Скорость стрелы

0 голосов
/ 08 января 2012

Я пытаюсь запрограммировать стрелу, летящую в воздухе, но скорость не выглядит хорошо.

Но теперь стрелка движется очень медленно, вот образец .

(Я знаю, что стрелка и траектория не соответствуют 100%, это всего лишь образец.)

//...

var inity0:Number = 50;
var initangle:Number = - Math.PI / 4;
var initvelocity:Number = 100;
var initvx:Number = initvelocity * Math.cos(initangle);
var initvy:Number = initvelocity * Math.sin(initangle);
var currentvx:Number = new Number(initvx);
var currentvy:Number = new Number(initvy);
var initdistance:Number = math.calcDistance(inity0,initvelocity,initangle);

currentvy -= 9.81 / stage.frameRate;
activearrow.x += currentvx / stage.frameRate;
activearrow.y -= currentvy / stage.frameRate;

//...

Есть идеи?

РЕДАКТИРОВАТЬ: я изменилсяследующий код:

currentvy -= 9.81 / stage.frameRate * 15;
activearrow.x += currentvx / stage.frameRate * 15;
activearrow.y -= currentvy / stage.frameRate * 15;

И теперь это выглядит хорошо, но может кто-нибудь сказать мне, почему я должен делать это, в то время как в физике он обычно летал бы в 15 раз быстрее?

1 Ответ

0 голосов
/ 08 января 2012

Конечно, вам просто нужно указать большее значение для initvelocity, пока вы не найдете скорость, которую считаете подходящей?

Редактировать:

Ничто не может связать ваши расстояния и абсолютные позиции с чем-либо вфизический мир.В реальности очень мало измеряется в «пикселях в секунду».Ваше утверждение currentvy -= 9.81 / stage.frameRate;, если я понимаю, как работает вспышка (это тоже было давно), эффективно устанавливает вертикальное замедление в 9,81 пикселей в секунду в квадрате (не в метрах), что по понятным причинам медленное.Кроме того, если вы считаете, что ваши расчеты эффективно масштабируются до 1 пикселя = 1 метра, скорость не обязательно является необоснованной, но у вас есть невероятно большой лук и стрелы!

Вам просто нужно применить какой-то масштабприблизить что-то «разумное».Честно говоря, нет настоящей науки.

...