關於world wind 的地形切片加載頓卡現象的解決辦法2

接着繼續心得,第四個原因經過代碼走查,調試代碼一步一步的跟蹤調試發現不存在臨時變量無法釋放的問題。所以排除了因爲在update的時候出現沒有釋放的臨時變量。

最後經過摸索和通過排除法進行一一的排除對首先對QuadTileSet.cs文件的init update render等方法和內部方法體一一的刪除最後發現在update裏面的一下代碼的執行嚴重的影像了

經過調試qt.update發現進入QuadTile.cs文件執行update的時候會卡


繼續跟蹤代碼發現執行到


這個的時候文件加載會很頻繁加載速度也會很慢我就又再次考慮了是不是512*512的問題。後來發現會對程序產生影響但是問題不大。所以也不是這一塊的問題。

然後我又改變思是不是一次加載切片過多,數據調度範圍過大,或者我電腦的屏幕分辨率過大的原因。

首先我修改了我的電腦的分辨率調整爲1024*768 修改過後系統的數據調度速度提升了不少但是還是會卡大概在三秒鐘左右,但是比起一開始卡的拖不動的情況我已經很滿足了

然後我又找到了計算數據切片加載範圍的地圖看看能否通過縮小數據加載範圍來再次提升瓦片數據調度的速度。

首先我又打開QuadTileSet.cs文件

修改了上圖中實例化方法中的紅箭頭標出的部分的閥值。然後再次運行程序,秒級加載。雖然有一秒鐘的頓卡現象但是對於目前的系統狀態我已經很滿足了。後面也只有通過修改切片大小優化切片數據和緩存策略吧這一秒鐘優化爲毫秒級別

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章