我有大量的點,它們會動態更新。大部分情況下,只有某些(相對較小)的陣列部分被更新。我的程序的目標是使用這些點來構建和顯示圖片。如何高效地顯示大量的移動點
如果我直接從點建立圖片,它將是8192 x 8192像素的大小。我相信一個優化就是減少陣列的大小。我的應用程序有兩個屏幕區域(一個是放大/放大另一個)。此外,我需要在任一屏幕區域平移此圖片。
我的優化方法如下。
- 取點的源陣列,並與所述第一屏幕區
- 同樣爲第二區域縮放因子降低,但具有更大的縮放因子
- 渲染有兩個陣列以兩種宗教組織
- 使用FBO作爲紋理(以提供平移圖片的能力)
- 更新圖片時,我只重新渲染更改的區域。
建議如何加快速度,因爲我目前的執行速度非常慢。
如果你有8192x8192 = 67Mio點,每個點有兩個組件,這將大約500MB的數據。好的,那不算小。這裏需要更多信息。你如何減少你的分數?還有多少是用於渲染的?這些「小部分」的其中一個點多久改變一次?部件可以分組嗎?這些縮放因素多久改變一次? – Dirk 2013-04-05 06:37:11
@Dirk更新以秒爲單位執行幾次。根據屏幕尺寸和比例因數減少後剩下的點數因此而變化。縮放係數由用戶控制。 – Megamozg 2013-04-05 07:07:40