首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

J2ME手機遊戲開發技巧(一):雙緩衝防閃爍與自訂斷點調試

     編輯:J2ME

雙緩衝技術:消除畫面閃爍的關鍵

雙緩衝是電腦動畫傳統技術,也是 J2ME 遊戲必備。閃爍成因:畫面顯示同時程式又在修改畫面。解決之道:在記憶體劃分一塊後台緩衝區,所有繪圖操作在緩衝區完成,最後一次性繪製到真實螢幕。

實作四步驟:

  1. 定義 Graphics bg 與 Image buf,按螢幕尺寸建立緩衝圖片 buf = Image.createImage(width, height),取得其 Graphics 物件 bg = buf.getGraphics()。
  2. 所有繪圖(drawImage、drawString 等)均在 bg 上進行。
  3. 呼叫 repaint() 通知系統喚起 paint() 更新真實螢幕(paint() 只能由系統調用,不可手動呼叫)。
  4. 在 paint(Graphics g) 中將緩衝圖片 buf 畫到螢幕:g.drawImage(buf, 0, 0, Graphics.TOP | Graphics.LEFT)。

雖步驟稍繁,效果顯著。後續顯示內容只需在 bg 上繪圖再呼叫 repaint() 即可。

自訂斷點函數:輕量級調試利器

同樣採用 stopFlag + while 死循環機制。testFun(String str) 在緩衝區畫白底矩形、繪製傳入字串、呼叫 repaint() 顯示,進入循環等待按鍵。keyPressed() 將旗標設為 false 解除循環。此法避免 IDE 斷點導致的死機與干擾,可在任意處(含循環中)放置多個斷點,按鍵即續行,極為方便。

斷點測試

圖1:斷點測試

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved