2016-02-19 59 views
0

目前,我有以下問題運行速度慢:JavaFX的動畫上樹莓派

我已經在一家商店,它運行在一個樹莓派2B模式創造出了窄播客戶端。規格:四核900MHz ARM Cortex A7處理器(BCM2836芯片組),1024MB RAM LPDDR2和16GB MicroSD屬於第10類。

我已經安裝了最新的JDK並使用JavaFX包擴展它(如第一回答here)。 JavaFX現在正在運行,所以應該沒問題。

但是,當我嘗試運行我的應用程序時,動畫運行速度非常慢(請參閱此video)。我使用下面的動畫代碼:

public void initImagesTransitions() { 

    EventHandler<ActionEvent> fadeIn = event -> { 

     TranslateTransition in = new TranslateTransition(Duration.seconds(1), imageHolder); 
     in.setFromY(-(SystemUtils.getScreenHeight()+100)); 
     in.setToY(-80); 
     in.setCycleCount(1); 
     in.play(); 

     imageHolder.setVisible(true); 

    }; 

    EventHandler<ActionEvent> zoomIn = event -> { 

     ScaleTransition st = new ScaleTransition(Duration.millis(5000), imageHolder); 
     st.setByX(0.8f); 
     st.setByY(0.8f); 
     st.setCycleCount(1); 
     st.play(); 

    }; 

    EventHandler<ActionEvent> fadeOut = event -> { 

     TranslateTransition out = new TranslateTransition(Duration.seconds(1), imageHolder); 
     out.setToY(500+SystemUtils.getScreenHeight()); 
     out.setCycleCount(1); 
     out.play(); 

     out.setOnFinished(e -> imageHolder.setVisible(false)); 

    }; 

    Timeline timeline = new Timeline(
     new KeyFrame(Duration.ZERO, fadeIn), 
     new KeyFrame(Duration.seconds(3), zoomIn), 
     new KeyFrame(Duration.seconds(19), fadeOut) 
    ); 

    timeline.playFromStart(); 

} 

所以沒有什麼特別的在我看來。樹莓派只使用30%的CPU,所以這也是我不清楚的。在後臺運行的唯一其他事情是一個類似檢查器,它每分鐘都與我的服務器API進行通信。

任何線索爲什麼動畫慢?

任何幫助,非常感謝!

回答

2

只是在這裏集思廣益。

你試過用-Dprism.order = ...設置嗎? Like = sw或= j2d?

或增加vram對你的PI嗎?

(這也似乎相關: javafx-very-slow-on-raspberry-pi?

+0

感謝您的回答!我會嘗試這些建議。鏈接似乎並不相關,因爲我使用了正確的JavaFX包。 – bashoogzaad

+0

使用j2d的動畫非常流暢,謝謝你!但是,-Dprism.order的更多設置以及在哪裏可以找到它們? – bashoogzaad

+0

還增加了配置中的VRAM,128MB更好,處理能力還是足夠的!再次感謝這個答案! – bashoogzaad