2012-02-21 100 views
0

我想知道如何爲XNA遊戲製作一條像尾巴的蛇。它自己的蛇是一個34x20像素的精靈,我的尾巴精靈是一個34x20的精靈。 但我有問題找到一種方式來創建一個故事。 我的第一個想法是使它基於瓷磚,並記住訪問過的瓷磚,達到尾部長度的限制。但這會讓尾巴滯後,所以在蛇離開瓦後會有尾巴。XNA遊戲如何製作蛇尾

做任何人都有一個理想,我可以在XNA遊戲中製作一條跟隨蛇光滑的X長度的尾巴嗎?

蛇形運動基於像素位置,不能停下來,只能改變方向!

回答

0

Nick Gravelyn在前段時間寫了Sammy the Snake for XNA(雖然在XNA 3中),但我認爲你會發現這對你的遊戲最有用。

在這個例子中,他使用List<Point>存儲體點,這使得它很容易增加新的身體部位:

bodyPoints.Add(new Point(2, 0)); 
bodyPoints.Add(new Point(1, 0)); 
bodyPoints.Add(new Point(0, 0)); 

然後,當談到渲染,你可以簡單地遍歷體指出:

for (int i = 1; i < bodyPoints.Count - 1; i++) 
{ 
    DrawBody(
     spriteBatch, 
     bodyPoints[i], 
     bodyPoints[i - 1], 
     bodyPoints[i + 1]); 
} 
+0

是的,這我知道,但我的蛇不是一個簡單的像素蛇,而是精靈蛇,但我想這是唯一的辦法。 – Androme 2012-03-07 17:35:21