2011-10-27 107 views
0

所以我正在爲Android做一個簡單的遊戲,我想弄清楚我應該使用哪種渲染方法。我很新很簡單=更好。我想要做的事情很簡單:繪製2.5D(傾斜圖像)框來形成一個洞穴尋找的東西,就像你正在尋找一個角色會跑下來跳躍的無限框。然而,洞穴是由幾十個箱子組成的,這些箱子在產卵後隨機分配和開/關。從http://developer.android.com/guide/topics/graphics/2d-graphics.html中抽取哪個選項適合我的情況?角色將根據加速度計傾斜而移動,並且可以自由移動,而角色不會改變角度。最好的方法來顯示圖形

回答

0

該頁面上的「選項」:使用視圖佈局或畫布是真正的選項。除了OpenGL和其他低級3D渲染外,所有在android中的繪圖都在Canvas上完成。

這裏的選項更多的是關於如何指定什麼繪製在畫布上。第一個選項允許您使用佈局xml指定在畫布上繪製的內容。第二種選擇是在View的onDraw()方法中直接在Canvas上繪圖。

對於任何形式的逼真運動和動畫的遊戲,您都需要在onDraw()事件中直接在畫布上繪製。

您可能可以爲菜單屏幕執行一些靜態(佈局xml)繪圖。

+0

我在考慮a)使用視圖對象或b)繪製到畫布。看看鏈接 – Taslem

+0

@Taslem我按照你的說明編輯了我的答案。 – spatulamania

0

由於可以以最簡單的方式處理自定義動畫,因此您最好使用surfaceview。

理想的是學習OpenGL和3D變換。 2.5d沒有真實的東西。你可能在談論的是3D三維正投影。有時候這是用2d精靈來完成的,有時用3d對象完成。

要捕獲傳感器信息,您可以在Android API中使用SensorManager。

0

嘿,這完全基於你需要繪製多少個獨立的位圖,以及你希望幀速率是多少。繪製到畫布是通過CPU完成的,因此比使用硬件加速的Opengl要慢。畫布實際上做了大約20-40 20x20px的位圖。 (這是來自過去的經驗,而且非常粗糙)。

如果可以的話,我會堅持使用畫布,因爲它很簡單。它將幫助您更好地理解遊戲循環的內容以及如何設計遊戲內部。

好運