看板 Flash 關於我們 聯絡資訊
最近在研究Timer計時器,發現時間間隔越短,延遲狀況越嚴重 雖然說AS3的Timer允許時間間隔最小設定到1ms,但跑起來延遲狀況卻很嚴重 如:var myTimer:Timer=new Timer(1,1000); 應該1秒跑完,但我跑的結果,實際上卻跑了將近8秒才跑完 我進一步測試,發現就連500ms也會延遲(20秒要花21秒跑完,30秒要花32秒跑完) 一旦時間拉長,豈不誤差很大!? 請問這是個人電腦效能的問題,還是AS3本身的問題? (如果是後者,我可以理解因呼叫函數次數多,速度相對慢; 但這樣AS3本身的設定不就不精準了?) 謝謝大家~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.134.88.67 ※ 編輯: justaID 來自: 220.134.88.67 (08/19 19:21)
ericinttu:你為什麼要讓它這麼忙? 08/19 19:31
etrexetrex:cool 有新梗了 誰來實作一個自動調整時間間隔的 Timer 08/20 00:06
dsmwang:用getTime判斷,結果發現延遲的更多XDD 08/20 01:24
justaID:1樓大XD 因為遊戲計時器需要計時到0.01 不得不讓它忙一點 08/20 02:16
justaID:順便測0.001秒 延遲8倍 就算0.01秒的延遲也將近2倍 08/20 02:18
justaID:在遊戲計時上就失去準確 08/20 02:20
ericinttu:你還是沒回答到我的問題. 沒必要每1ms都把所有的東西都 08/20 04:07
ericinttu:重頭做過一遍吧, 如果真要如此, 那就要改你的流程架構了 08/20 04:08
ericinttu:時間的精準度,也是要符合現實面. 08/20 04:09
justaID:喔!我每1ms做的事情只有對一個int變數++,以及印出該變數 08/20 05:12
justaID:並沒有做其他事 單純用來計時 這樣不算做太多事吧? 08/20 05:14
justaID:(等於函式裡只有2行很短的程式) 08/20 05:15
ericinttu:就回歸到取樣頻率是否要到1ms,如果是的話,Flash 的架構 08/20 08:53
ericinttu:是否能支持你這麼做? 08/20 08:54
justaID:我就是來請教這一點的^_^ 究竟是電腦效能問題還是Flash架 08/20 10:59
justaID:構問題 我必須顯示數字到10ms 如果是後者就得另謀他法~"~ 08/20 11:00
ericinttu:我之前有做一個小東西,顯示單位到1ms,初步看起來沒有 08/20 12:24
ericinttu:delay,要看那個網址嗎? 08/20 12:25
ericinttu:要的話丟我水球 08/20 12:26
justaID:不會用水球 已站內信給大大 謝謝! 08/20 13:36