我一直在尋找答案,但沒有找到任何具體的關於它。2D OpenGL動畫紋理(Android)
我想知道這兩個例子中的哪一個更好地與速度和性能相關。提前致謝!
我在2D中製作了一個openGL ES 1.0 Android遊戲。爲了使角色動畫我使用不同的紋理。我有兩個posibilities與紋理:
第一個是具有在一個int數組每個紋理和取決於在所述框架上與改變被選擇的一個:
gl.glBindTexture(GL10.GL_TEXTURE_2D, texture[actual_id]);
在另一方面,我們可以有一個所有圖像的「大」紋理,並修改紋理座標。在這種情況下,而不是:
private float textures[] = {
// Mapping coordinates for the vertices
0.0f, 1.0f, // top left (V2)
0.0f, 0.0f, // bottom left (V1)
1.0f, 1.0f, // top right (V4)
1.0f, 0.0f // bottom right (V3)
};
(這將是一個在第一種情況),這將是:
private float textures[] = {
// Mapping coordinates for the vertices
0.0f, 0.5f, // top left (V2)
0.0f, 0.0f, // bottom left (V1)
0.5f, 0.5f, // top right (V4)
0.5f, 0.0f // bottom right (V3)
};
(使用2×2箱),而這些座標應圍繞紋理移動。
我想知道哪些可能是最快的。另外,如果有第三種我最想知道的方式。
謝謝你的時間。如果我必須詳細說明問題,請問我。
你好,歡迎光臨。您可能想知道,像這樣的'偏好'問題通常被認爲是不合適的(參見[FAQ](http://stackoverflow.com/faq#dontask))。話雖如此,你可能想選擇一個你最感興趣的標準。我不相信一種方法比另一種更好(一種方法可能更快,另一種方法可能使用更少的內存),而且這種方法很容易從一臺設備變爲另一臺。如果您可以選擇一個重要標準並重新提出您的問題,只需要詢問*哪種方法使用較少的內存*,則可能更合適。 – Tim 2012-07-20 21:44:19
感謝您的快速回答。我想知道哪一個比使用內存更快。我要修改這個問題,謝謝你的建議! – charlypu 2012-07-20 21:48:23