2010-11-18 105 views
2

好吧,我正在製作一臺平臺遊戲機,我想知道如何讓arc'd輕鬆跳躍。就像馬里奧在超級馬里奧兄弟中所做的一樣1.任何想法都可以通過簡單的方式實現這一點?Arc'd跳躍方法?

回答

2

模擬重力^^

你馬里奧將有一個增量來控制其在X移動,然後使它2D VECT,其中將包括一個Ÿcomponnent這Ÿ總會有-gravity添加到垂直加速度。

這樣,當你跳你就必須向前跳躍力+重力將逐步拖累馬里奧背下來給你你的圓弧

+0

「模擬重力」讓我微笑。 – 2010-11-18 08:59:23

+0

它讓我微笑^^但它聽起來太完美了作爲答案:p – 2010-11-18 09:13:53

0

很簡單的僞代碼:

if playerHitsGround or playerHitsBlockAbove: 
    playerGravity = 0 // reset the gravity 
endif 

if jumpButtonHit and playerGravitiy == 0: 
    playerGravity = -5 // set the "negative" gravity 
endif 

playerGravity += 0.1 // increase the gravity, so we fall back 
playerPositionY += playerGravity // apply our "gravity" to the player 

這是因爲儘可能簡單,並且很可能也是在NES時代使用的相同方法。這裏的「弧線」來自這樣的事實,即在應用「重力」的同時,您也向前移動。