0
現在在我的代碼中,我有6-8個具有不同延遲的不同定時器。每個計時器都會在舞臺上產生不同的東西。我的問題只是一個簡單的問題,如果我能做一個可以產生一切的計時器,會更好嗎?那更好的呢?它會與遊戲的優點不同嗎?FLASH AS3 AIR 3.0 iOS:定時器優化?
簡單:8個不同的計時器與1個巨大的計時器,包含所有8個計時器保持在一起的每個信息?
現在在我的代碼中,我有6-8個具有不同延遲的不同定時器。每個計時器都會在舞臺上產生不同的東西。我的問題只是一個簡單的問題,如果我能做一個可以產生一切的計時器,會更好嗎?那更好的呢?它會與遊戲的優點不同嗎?FLASH AS3 AIR 3.0 iOS:定時器優化?
簡單:8個不同的計時器與1個巨大的計時器,包含所有8個計時器保持在一起的每個信息?
一般來說,遊戲開發者更喜歡讓一個計時器運行整個事情。這被稱爲主循環,遊戲循環或更新循環。也就是說,很多Flash遊戲都有性能可用,並且使用多個計時器的可讀性可能使得更容易完成遊戲。過早地優化你的代碼跟不優化它一樣糟糕。
如果你的遊戲在各種設備上均勻運行,沒有性能問題,那麼不用擔心重構定時器。另外在Flash遊戲中,定時器不太可能成爲性能問題的原因。渲染和創建新對象。因此,在優化可能不是罪魁禍首的區域之前,如果存在性能問題以發現哪些函數調用實際上導致了問題,那麼一定要對遊戲進行配置。
總之 - 在遊戲中沒有關於使用計時器的單向編碼規則。但是,在我認識開發遊戲的開發人員中,我們儘可能少地使用代碼來簡化代碼,並且能夠輕鬆地停止和啓動代碼。
哇,謝謝你的一個很好的答案。好吧,我想我會嘗試製作一個「主計時器」,因爲我想讓代碼變得更簡單。但在此之前,我想我會停止一些定時器,看看是否有一個定時器使性能下降最多。謝謝! :) – user1036231
格蘭特斯金納還發布了一個在運行時分析閃存函數的好工具。它可以在得到可衡量的結果而不是假設的情況下使用: http://gskinner.com/blog/archives/2009/04/as3_performance.html –
如果您正在進行繁重的數據操作,導致顯示器發生變化,您可能需要查閱UIcomponent並閱讀無效方法。從顯示中分離數據,例如someobject.x = asdf;只在驗證中做這個任務。 –