編輯:初級開發
繪圖優化:
1、髒矩形:每次都重繪整個背景圖,其實是非常浪費的,前後兩幀的圖其實只有很少的一部發生了變化,因此可以只重繪變化的部分。這是一種常用的繪圖優化方式,需要注意的是,android用了雙緩沖,也就是說,使用髒矩形的時候,需要連續繪制兩次才能完成對surface的刷新。
2、卷屏:這是常用的一種方法,緩存整張背景圖,抽象出一個可視窗口,僅顯示窗口中的內容,窗口的移動方向與sprite相同,與背景運動方向相反。android游戲背景圖的分辨率一般與屏幕的相同,這種方法很少會被用到。
引擎優化:
1、流水作業化資源:簡單來說,就是整合資源,不用的資源就及時釋放,需要用到的資源再加載,類似流水線生產過程。比如,游戲加載過程中,當前關卡(場景、模式等等)使用不到的音樂或者圖像資源就全部釋放,僅加載需要用的資源;用不到的線程,不要讓它休眠,一定要把它干掉;如果有的資源只用得到一部分,那麼就拆解開來,僅加載需要的部分。
2、狀態轉移邏輯:游戲開發前一定要想清楚狀態轉移,冗余的狀態變化將損耗框架的整體性能,對游戲流暢性的影響以及後期修改的成本往往是遠遠超出預期的。不要怕費力,一定要認真優化狀態轉移過程。此外,activity之間切換、ui線程和游戲線程之間的切換,都是非常花費時間的,應該盡力避免。
游戲邏輯優化:
1、預處理:盡可能地預處理游戲邏輯中的運算。比如游戲中經常要用到隨機數,就應該在游戲開始之前,生成足夠的隨機數供游戲邏輯調用,千萬避免使用系統自身的rand()函數。這種優化方式難度比較大,但是往往是突破瓶頸的最有效手段。
2、算法優化:這個沒有什麼好多說的,算法功底和經驗積累很重要,單干搞不定的,趕快找同事幫忙。
3、語法優化:語法對運行速度也有很大影響,比如for循環,不同的寫法,時間開銷差別極大
TextVIEw 部分字體高[功能]TextVIEw是不支持部分字段高亮的 但是我們可以進行擴展[思路]1. 利用LinearLayout 作為 TextVIEw 的
從學習搭環境到開發,雖然也遇到些讓人糾結的問題,還好都一一解決了。言歸正轉,這次寫的是一個Demo似的小應用,簡單得不能再簡單了,一共就三個類,主類Bubble繼承於A
接上,其實BnMediaPlayerService->onTransact函數的結構也很簡單,就是switch...case...接收不同的請求執行不同的代碼調用
70.Spinner1 注意:源碼第7行ArrayAdapter用R.array.colors數組來設置 1: @Overr