2011-06-02 93 views
1

我在Flash AS3中的遊戲項目工作。功能和事件之間的AS3性能差異

我需要將數據從一個類(Game)傳遞到EnterFrame上的其他類對象(Ships),並且性能開始成爲問題。 我想知道在向Ship發送一個直接函數或調度Ship可以收聽的事件之間的性能差異。

另一個問題是我應該在哪裏放置enterframe函數。使用只有一個enterframe函數並從那裏調用methods \ dispatch事件會更好嗎?或者將enterframe放在不同的對象(Ships)中會更明智嗎?注意:有些船在大多數時間都不工作。

希望我設法解釋自己。

感謝,

體內

+1

你應該考慮觀察者模式。 – Taurayi 2011-06-02 12:53:52

+0

回調將比使用事件更快。如何讓你的船舶在一個數組中可以在主遊戲循環(enterframe)中循環以在每艘船上調用update()方法? – 2011-06-02 13:22:07

回答

1

這絕對是便宜調用函數直接而不需要經過事件分派/聽鏈。

你應該擁有多少個EnterFrames是很棘手的,一般來說最好儘可能少,但如果你必須派發大量的事件,最好還有更多的事情 - 如果你可以做它從一箇中央EnterFrame循環直接調用方法是最好的。

此外,如果您的船舶大多數時間不活動,那麼你不應該有一個EnterFrame運行在每個。

+0

謝謝你...這是非常有幫助的 – vivo 2011-06-05 19:42:42

相關問題