簡體   English   中英

在簡單的2D游戲中實現重力

[英]Implementing gravity in simple 2d game

我正在做一個簡單的游戲,例如馬里奧游戲,角色固定在一個位置,地面向左移動,給人一種角色移動的幻覺。 地面由矩形塊組成,這些矩形塊由左上角和右下角坐標定義:

private int surfaceMatrix[][] = {
   {0, 100, 300, 0} // block having 100 height and 300 width
};

跳躍只是在向左移動表面的同時更改角色的y坐標,因此跳躍看起來像是反向的V字母。

其余代碼-動畫,移動精靈-與http://zetcode.com/tutorials/javagamestutorial/movingsprites/非常相似


我希望跳躍變得更真實,所以我的問題是-如何在這里實現重力? 我必須使用地面的dx角色的dy來做到這一點,好嗎?

這里的速度是多少? 每秒像素...?

怎么做?

讓我們來看看:

g = 9.8 meters/second

以字符為單位的人物高度,並使其與人的平均身高相匹配,例如,身高1.7米。

然后使用引力公式:

y = y0 - g * t^2 / 2

其中g以像素/秒為單位。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM