2012-01-08 49 views
2

我是AndEngine編程的新手。我想在用戶可以與之交互之前移動一個重新創建複雜動畫的精靈。 精靈的初始移動不是那麼線性,也不是那麼簡單。我想將複雜的數學算法應用於移動精靈的座標。 我該如何做到這一點?我可以在AndEngine中使用哪些現有功能?在AndEngine中使用複雜的數學路徑移動精靈

回答

6

計算您的位置並將它們存儲到兩個float陣列中。第一個數組中的每個單元格都是X座標,而第二個數組中的每個單元格都是Y座標。

然後,創建一個Path對象。確保它是AndEngine的Path對象,而不是常規Android SDK的一個(AndEngine一個是org.anddev.andengine.entity.modifier.PathModifier.Path)。 創建Path這樣:

Path path = new Path(coordinatesX, coordinatesY); 

coordinatesXcoordinatesY,當然,float陣列。現在

,所有你需要做的就是創建一個PathModifierPath

PathModifier modifier = new PathModifier(duration, path); 
modifier.setRemoveWhenFinished(true); 

durationfloat指定用於實體的時間將沿路徑移動越小它的速度就越快。實體移動,嘗試不同的時間以找出最適合你的方式)。

使用true參數調用setRemoveWhenFinished可確保路徑修改器在路徑完成時取消註冊。

然後只需將它註冊到你的精靈:

sprite.registerEntityModifier(modifier); 

和你做。

+0

嘿,你救了我的命..非常感謝你! – 2012-01-08 18:12:00