簡體   English   中英

glDrawElements過多導致fps低? OpenGL ES1.1(iPhone)

[英]Too many glDrawElements cause for low fps? OpenGL ES1.1 ( iPhone )

我正在開發基於2D Tile的游戲,並且目前在性能問題上掙扎,即使在iPad 3上運行時,我的FPS約為10-15FPS。OpenGLES幀捕獲顯示我每幀調用glDrawElements 689次! 那很多嗎 可能是性能低下的情況嗎?

我是否應該將所有內容堆疊到一個巨大的數組中並執行1次抽簽? 有什么不同嗎?

目前,您目前受到命令問題(假設)的限制,如果您運行opengl性能檢測程序(它位於xcode(右鍵單擊,打開開發人員工具)下,則可能必須通過首選項進行下載)。

您的目標是在一天結束時受到填充率的限制,這里有一些技巧可以幫助您到達目的地

按“繪制深度混合模式紋理ID”對所有精靈進行排序

排序后,將所有精靈打包到一個頂點緩沖區對象和一個索引緩沖區對象中。

每當繪制深度,混合模式或紋理ID發生變化時,就該進行新的繪制調用並綁定這些資源。

還請記住,子畫面的頂點應在cpu側變平(pos x mvp),並且不應該通過矩陣發送,並且任何其他屬性(例如顏色)都應該是頂點的一部分。

典型頂點

{
    float pos[3]
    int color
    float uv[2]
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM