спрайт падает с верхней части экрана с ускорением силы тяжести в простой js - PullRequest
0 голосов
/ 27 июня 2018

Привет, я пытаюсь переместить злобу с верхней части экрана на нижнюю. Я хочу добиться эффекта гравитации. Чтобы упредить людей, предлагающих использовать игровой движок, A: это js работает на сервере node.js, а не на клиенте (вы можете предложить игровой движок для узла), и B: это единственное место, где мне нужно использовать эффект гравитации, так что я чувствую, что, конечно, проще просто сделать цикл с какими-то расчетами ускорения внутри?

В этом примере мне не нужно ничего делать, кроме расчетов.

var theMeteor = {
"x":500, //the start x position
"y":1000, //the start y position
"v":1 // the velocity
};

function MeteorFall(dt){

theMeteor.y += (theMeteor.v * dt) * -1; // move the meteor down
theMeteor.v++;// increase the velocity

// keep looping until its at the bottom
if(theMeteor.y <= 0){
// its at the bottom so clear the loop
clearInterval(theDeamon);
}

}

var dt = 0.025; //set this to whatever the loop refreshes at (0.025 = 25)
var theDeamon = setInterval(MeteorFall, 25, dt);

Это работает, но это не очень хорошо, есть кто-нибудь, кто может показать мне, как это сделать правильно, пожалуйста?

...