2013-03-01 64 views
1

我想要在Android手機上運行30個飛機的模擬器。Air Native Extension中的Java性能,我該如何優化?

我在AS3中編寫了整個東西,但認爲如果我將Java用作本機擴展,性能會有所提升。

模擬是一個30個單位的圖書館。模擬計算所有單位之間的距離和旋轉。這是大約870迭代與許多距離和旋轉計算。

我的ANE在Java上的運行速度比我的AS3版本低大約50倍。

問題似乎是多次調用FREArray上的setObjectAt()。我想這個Java到AS3的轉換很慢。有沒有一種方法可以將變量從Java恢復到AS3?

回答

1

我猜AS3性能與標準Java性能沒有什麼不同,當它用作本地擴展時。

但是,由於Android NDK允許我使用C++重建庫,因此我的性能不會提高大約20倍。

所以,如果你正在從AS3尋找Android的性能優勢:使用NDK。