我正在構建一個工具包,用於使用Emscripten創建本機質量的移動應用程序。主要目標是使這些應用程序與使用iOS或Android SDK構建的應用程序在視覺上難以區分。該工具包大量使用WebGL來渲染視圖樹。在OpenGL中構建一個窗口系統
圖形性能是一個反覆出現的問題 - 據我所知我通常是填充式的 - 我經常發現自己希望我不必在每一幀都重繪整個視圖樹。理想情況下,我想以某種方式而不是在glSwapBuffers()之後丟失幀緩衝區內容,然後僅重繪在幀之間更改的視圖。 (好吧,重繪兩次,每次緩衝一次)。這樣的方法是否可行?據我所知,不是,無論如何,但我希望我錯了。
另外我猜我可以畫一個屏幕大小的FBO,並簡單地複製每一幀的整個事情......但如果有很多在屏幕上移動(全屏幕過渡效果,說)然後我只是加倍我的填充率。
對於這個問題的模糊性事先道歉,任何人都可以推薦一些在這種情況下可能有用的技術嗎?
感謝您的回覆!我已經在使用一個相當有效的包裝算法的字形使用紋理圖集。我打算利用瀏覽器畫布API進行字形生成(目前我有FreeText做這件事),所以大字體不會成爲問題。 –
FWIW該工具包還生成原生構建,因此您可以在不更改任何代碼的情況下在本機和Emscripten之間切換,並且這兩個構建的外觀和行爲完全相同。這使調試更容易。 –