[英]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.